zoukankan      html  css  js  c++  java
  • JSON、JSONObject、JavaBean三者的相互转换

    JSON、JSONObject、JavaBean三者的相互转换

    平常的开发中,json的转换是需要经常使用到的,特意整理了下。

    User user = new User(1L, "haha", 13, "erfa",new Date(),new Date(),1,3);
    @Test
    void testFastJson() {
        //将对象转换成json字符串
        String userToJsonString = JSON.toJSONString(user);
        System.out.println(userToJsonString);
        //将json字符串转换成对象
        User jsonStringToUser = JSON.parseObject(userToJsonString,User.class);
        System.out.println(jsonStringToUser);
    }
    
    /**
     * JavaBean转JSONObject
     */
    @Test
    void JavaBeanToJSONObject(){
        JSONObject jsonObject = (JSONObject)JSONObject.toJSON(user);
        System.out.println(jsonObject.toString());
    }
    
    /**
     * JavaBean转JSON
     */
    @Test
    void JavaBeanToJSON(){
        String json = JSON.toJSONString(user);
        System.out.println(json);
    }
    
    /**
     * JSONObject转JavaBean
     */
    @Test
    void JSONObjectToJavaBean() {
        JSONObject jsonObject = (JSONObject)JSONObject.toJSON(user);
        User user = jsonObject.toJavaObject(User.class);
        System.out.println(user.toString());
    }
    
    /**
     * JSONObject转Json
     */
    @Test
    void JSONObjectToJson() {
        JSONObject jsonObject = (JSONObject)JSONObject.toJSON(user);
        String json = JSONObject.toJSONString(jsonObject);
        System.out.println(json);
    }
    
    /**
     *Json转JavaBean
     */
    @Test
    void JsonToJavaBean() {
        String json = JSON.toJSONString(user);
        User user = JSON.parseObject(json, User.class);
        System.out.println(user.toString());
    }
    
    /**
     * Json转JSONObject
     */
    @Test
    void JsonToJSONObject() {
        String json = JSON.toJSONString(user);
        JSONObject jsonObject = JSONObject.parseObject(json);
        System.out.println(jsonObject);
        String name = jsonObject.getString("name");
        System.out.println(name);
    }
    
    自我控制是最强者的本能-萧伯纳
  • 相关阅读:
    旋转编码器控制线扫相机
    函数被const修饰,const修饰的究竟是谁?
    静态函数不能引用非静态成员变量的原因,this指针
    Ubuntu18.04 截图工具flameshot
    基于STM32的uCGUI移植和优化
    基于bootsplash的嵌入式linux启动画面定制
    uC/OS-II源码分析(一)
    uC/OS-II源码分析(二)
    uC/OS-II源码分析(三)
    uC/OS-II源码分析(四)
  • 原文地址:https://www.cnblogs.com/CF1314/p/13731635.html
Copyright © 2011-2022 走看看