java中如何将json字符串同对象之间相互转换呢?

戚薇 Java经验 发布时间:2023-04-22 11:37:51 阅读数:14687 1
下文笔者讲述json字符串和对象之间相互转换的方法分享,如下所示

JSON字符串和对象互相转换的实现思路

字符串转对象(字符串转json数组)
   JSON.parseArray

JSON对象转字符串
   JSONObject.toJSONString
	  或
   JSON.toJSONString
例:json字符串和对象之间相互转换
//定义一个实体类

@Data
pubilc class UserVo {
    private String name;
	private Long age;
}
 
//json字符串转换为对象
String jsonStr = "{\"name\":\"猫猫\",\"age\":22}";
JSONArray jsonArray = JSON.parseArray(jsonStr);
UserVo UserVo = (UserVo) JSONObject.parseArray(jsonArray.toJSONString(), UserVo.class);

//多个对象
String jsonStr = "[{\"name\":\"猫猫\",\"age\":22},{\"name\":\"狗狗\",\"age\":17}]";

JSONArray jsonArray = JSON.parseArray(jsonStr);

list<UserVo> userList = JSONObject.parseArray(jsonArray.toJSONString(), UserVo.class)

 
String userStr = "{\"userList\":[{\"name\":\"猫猫\",\"age\":22},{\"name\":\"狗狗\",\"age\":17}]}";
JSONObject userJson = JSON.parseObject(userStr);
JSONArray  userArray = userJson.getJSONArray("userList");

//第一种解析方式:直接解析为对象list
List<UserVo> studentsList = JSONObject.parseArray(studentArray.toJSONString(), UserVo.class);
for (int i = 0; i < userArray.size(); i++) {
	JSONObject user = userArray.getJSONObject(i);
    UserVo UserVo = new UserVo();         
    UserVo.setStudentName(student.getString("studentName"));      
    UserVo.setStudentAge(student.getString("studentAge"));
}


//对象转json字符串
//方式1:
String jsonObjectStr = JSONObject.toJSONString(userList);
  
 //方式2:
String jsonObjectStr = JSON.toJSONString(userList);
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202304/16821347106295.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者