FastJson的基本使用实践

序列化一个对象成为JSON字符串

        User user = new User();
        user.setName("小白");
        user.setAge(12);
        user.setEmail("234@qq.com");

        String formarStr = JSON.toJSONString(user);
        KLog.d("输出信息--", formarStr);

        输出信息
        
        {"age":12,"email":"234@qq.com","name":"小白"}

反序列化一个JSON字符串成为一个对象

        String jsonString = "{\"name\":\"小黑\",\"age\":20,\"email\":\"333@qq.com\"}";
        User user1 = JSON.parseObject(jsonString,User.class);
        KLog.d("输出信息--", user1.toString());

        输出信息
        
        User{name='小黑', age=20, email='333@qq.com'}

数组序列化成为JSON字符串

        List<User> users = new ArrayList<>();
        users.add(user);
        users.add(user1);
        String userStr = JSON.toJSONString(users);
        KLog.d("输出信息-userStr-", userStr);
        
        输出信息
        
        [{"age":12,"email":"234@qq.com","name":"小白"},{"age":20,"email":"333@qq.com","name":"小黑"}]
        

JSON字符串反序列化为数组

        List<User> user2 = JSON.parseArray(userStr,User.class);
        KLog.d("输出信息-user2.size()-", user2.size());
        
        输出信息
        
        2

序列化Map成为JSON字符串

        Map<String,Object> dataMap = new HashMap<>();
        dataMap.put("tag", "data");
        dataMap.put("hospitalName", "我是医院名字");
        dataMap.put("name", "欧阳夏凡");
        dataMap.put("gender", "女");
        dataMap.put("age", "28");
        dataMap.put("code", "420502042");
        dataMap.put("examineDoc", "杨林");
        dataMap.put("examineDate", "2016-05-10");
        dataMap.put("verifyDoc", "王菲");
        KLog.d("MapToJson-", JSON.toJSONString(dataMap));
        
        输出信息
        
         {"age":"28","code":"420502042","examineDate":"2016-05-10","examineDoc":"杨林","gender":"女","hospitalName":"我是医院名字","name":"欧阳夏凡","tag":"data","verifyDoc":"王菲"}

反序列化JSON字符串到Map

        Map<String,Object> dataMap = new HashMap<>();
        dataMap.put("tag", "data");
        dataMap.put("hospitalName", "我是医院名字");
        dataMap.put("name", "欧阳夏凡");
        dataMap.put("gender", "女");
        dataMap.put("age", "28");
        dataMap.put("code", "420502042");
        dataMap.put("examineDoc", "杨林");
        dataMap.put("examineDate", "2016-05-10");
        dataMap.put("verifyDoc", "王菲");
        KLog.d("MapToJson-", JSON.toJSONString(dataMap));
        Map<String,Object> maps =  JSON.parseObject(JSON.toJSONString(dataMap),Map.class);
        KLog.d("JsonToMap-",maps.toString());
        
        方法
        Map<String,Object> maps =  JSON.parseObject(JSON.toJSONString(dataMap),Map.class);
        
        输出结果
        
         {age=28, tag=data, examineDate=2016-05-10, verifyDoc=王菲, name=欧阳夏凡, gender=女, examineDoc=杨林, hospitalName=我是医院名字, code=420502042}

        

如果只想解析某个属性

        User user = new User();
        user.setName("小白");
        user.setAge(12);
        user.setEmail("234@qq.com");
        SimplePropertyPreFilter filter = new SimplePropertyPreFilter(User.class, "name");
        String formarStr = JSON.toJSONString(user,filter);
        KLog.d("输出信息--", formarStr);
        
        输出结果
        
        {"name":"小白"}
        
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,094评论 19 139
  • 让人乐在其中的美丽是那么的耀眼,在四季分明的季节里,有的人喜欢展会设计夏天的热情和冬天的冰冷,而我却喜欢那春天的欣...
    nali35阅读 1,891评论 0 0
  • 有的人刚刚分手 有的人刚刚认识 有的人刚刚好想要接触恋爱 丫丫突然说 好想谈恋爱 我嘲笑她 你现在这么独立 除了生...
    阿乔乔乔乔乔阅读 2,939评论 0 0
  • 81【工具】
    依盈阅读 49评论 0 0
  • 中午午休时,我们几个要好的同事在一起闲聊,其中一个向我们倾诉了心事,她和恋爱中的男友闹矛盾了,两个人进入了冷战。两...
    侠女阅读 2,999评论 0 1

友情链接更多精彩内容