jsonarray转成对象中的字段不一样

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsonarray转成对象中的字段不一样相关的知识,希望对你有一定的参考价值。

参考技术A JSONArray转换成对象时,需要注意的是,JSONArray中的每个元素必须是相同类型、具有相同的字段的对象,否则可能会造成字段不一样的情况。因此,在将JSONArray转换成对象时,应该先确保JSONArray中的每个元素都是同一类型的对象,并且具有相同的字段。

java多种方式解析json字符串

  第一种:用net.sf.json硬解。缺点:要求字段名称和json字符串中的字段名一样,字段命名会违反驼峰规则,也不利于拓展;

 JSONArray jsonArray = JSONArray.fromObject(str);
  JSONObject jObj = jsonArray.getJSONObject(0);
  User user= (User)jObj.toBean(jObj,User.class);

第二种:用Gson解析json字符串。优点:写法简单,字段名称只要使用@SerializedName注解,皆可以是使对象字段和json一一对应;缺点:解析json数组这样的字符串稍微麻烦点

  Gson gson = new Gson();
  User user= gson.fromJson(msg, User.class);

 

第三种:用jackson解析。优点:与Gson解析一样,字段名称可以使用@JsonProperty注解;

ObjectMapper mapper = new ObjectMapper();

User user= mapper.readValue(msg, User.class);




以上是关于jsonarray转成对象中的字段不一样的主要内容,如果未能解决你的问题,请参考以下文章

如何获取jsonarray中 某个值

字符串转成JSONArray和JSONObject遍历

Java中对JSONArray中的对象的某个字段进行排序

Java中对JSONArray中的对象的某个字段进行排序

java对象怎么转成json数组 传到前台页面

对象的某个属性是arrayList该如何转成json,又该怎么解析json