zoukankan      html  css  js  c++  java
  • Java对象与Map的互转

    1.引入fastjson

            <!--fastjson-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.74</version>
            </dependency>
            <!--fastjson结束-->
    

    2.参考代码

    2.1 Java对象UserDTO

    package cn.yang37.demo.dto;
    
    import lombok.Data;
    
    @Data
    public class UserDTO {
        private String id;
        private String name;
        private String age;
    }
    

    2.2 转换

    package cn.yang37.demo.util;
    
    import cn.yang37.demo.dto.UserDTO;
    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONObject;
    
    import java.util.HashMap;
    import java.util.Map;
    
    public class ParamUtils {
    
        public static void main(String[] args) {
            Map<String, Object> inMap = new HashMap<>();
            inMap.put("id","123");
            inMap.put("name","yang");
            inMap.put("age", "22");
    
            //Map -> 对象
            UserDTO userDTO = JSON.parseObject(JSON.toJSONString(inMap), UserDTO.class);
            UserDTO userDTO2 = JSONObject.toJavaObject((JSON) JSON.toJSON(inMap), UserDTO.class);
    
            //对象 -> Map
            Map map = JSONObject.parseObject(JSONObject.toJSONString(userDTO), Map.class);
            Map<String,Object> map2 = JSONObject.parseObject(JSON.toJSONString(userDTO));
    
            System.out.println(userDTO.toString());
            System.out.println(userDTO2.toString());
            System.out.println("----------------------");
            System.out.println(map.toString());
            System.out.println(map2.toString());
        }
    }
    

    2.3 结果

    UserDTO(id=123, name=yang, age=22)
    UserDTO(id=123, name=yang, age=22)
    ----------------------
    {name=yang, id=123, age=22}
    {"name":"yang","id":"123","age":"22"}
    
  • 相关阅读:
    70.BOM
    69.捕获错误try catch
    68.键盘事件
    523. Continuous Subarray Sum
    901. Online Stock Span
    547. Friend Circles
    162. Find Peak Element
    1008. Construct Binary Search Tree from Preorder Traversal
    889. Construct Binary Tree from Preorder and Postorder Traversal
    106. Construct Binary Tree from Inorder and Postorder Traversal
  • 原文地址:https://www.cnblogs.com/yang37/p/14537648.html
Copyright © 2011-2022 走看看