json和java之间的相互转换

最近做了一个爬虫项目,用到了json和 java对象在前后台之间的转换,做一些必要的笔记,一来是对自己学习的知识的巩固,二来对有同样问题的人有参考作用



一 前端转换

1、object转化为json字符串

var data = new Object();
var jsonData = JSON.stringify(data);

2、json字符串转为js对象

var jsonObj = eval(jsonStr);
var jsonObj = JSON.parse(jsonStr);
二 后台转换

本文使用fastJson进行解析转换,更多方式参考 文章底部的参考链接

1、导入 依赖

<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.47</version>
</dependency>

2、java对象转json字符串

详细使用方法参考:w3c的 API 连接

public class MyJson {
 
    public static void main(String[] args) {
        User user = new User();
        user.setName("xiaohong");
        user.setPassword("654321");
        List<User> list = new ArrayList<User>();
        list.add(user);
        list.add(new User("xixi","789"));
        Map map = new HashMap();
        map.put("001",user);
        map.put("002",list);
 
        // toJsonString  - java对象转换为json字符串
        System.out.println(JSONObject.toJSONString(user));
        System.out.println(JSONObject.toJSONString(list));
        System.out.println(JSONObject.toJSONString(map));
        
    }
}

3、json字符串转java对象

public class MyJson {

    public static String jsonmap = "{\"001\":{\"name\":\"xiaohong\",\"password\":\"654321\"},\"002\":[{\"$ref\":\"$.001\"},{\"name\":\"xixi\",\"password\":\"789\"}]}";
    
    public static String jsonuser = "{\"name\":\"xiaohong\",\"password\":\"654321\"}";
    
    public static String jsonlist = "[{\"name\":\"xiaohong\",\"password\":\"654321\"},{\"name\":\"xixi\",\"password\":\"789\"}]";
 
    public static void main(String[] args) {
 
        // toJavaObject - json字符串转换为java对象
       System.out.println(JSONObject.parseObject(jsonuser,User.class));
       
       List list1 = JSONObject.parseObject(jsonlist, List.class);
       for(int i=0;i<list1.size();i++) {
           System.out.println(JSONObject.parseObject(JSONObject.toJSONString(list1.get(i)),User.class));
        }
        
       Map map1 = JSONObject.parseObject(jsonmap, Map.class);
       Iterator iterator = map1.entrySet().iterator();
       while (iterator.hasNext()) {
           Map.Entry entry= (Map.Entry) iterator.next();
           System.out.println("key :"+entry.getKey()+"   value: " + entry.getValue());
       }  
        
    }
}

三 总结

如有错误恳请指正,如有侵权请联系我删除
参考文章: js object转化为json字符串 json字符串转为js对象
                json 和java对象 互相转换(java)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值