普及json格式相关问题

一. json知识

  1. 什么是json对象
    在大括号{…}中书写,包含多个key/value(键/值)对,key必须是字符串,value可以是合法的JSON数据类型(字符串,数字,对象,数组,布尔值或null)
    例如一个最简单的没有嵌套的JSON对象:
    { “name”:“john”, “heght”:180, “brother”:null }
  2. 什么是json字符串?
    书写格式和json对象一样,不过类型为String,不能直接操作其中的各个属性,需要对其进行转换。在很多前后端交互传值之类的,都以json字符串的形式进行传递。,所以对json字符串进行转换非常有必要。
  3. 什么是JSON数组?
    JSON 数组在中括号中书写,JSON 中数组值必须是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。
    简单的JSON数组:
    [ “Google”, “Runoob”, “Taobao” ]

二. 使用FastJson进行json对象和json字符串的转换

  • 将json字符串转换成为json对象
Student student =JSON.parseObject(jsonStr,Student.class);
  • 简单json字符串数组转换为list数组
 List<Student> studentList  = JSONObject.parseArray(jsonStr, Student.class);
  • 复杂json对象转化成为json字符串
HighSchool highSchool = JSON.parseObject(jsonStr,HighSchool.class);
List<Student> studentList  = JSONObject.parseArray(highSchool.getStudent().toString(), Student.class);

总结

首先要明白,以 { } 开头的是JSONObject,以 [ ] 开头的是JSONArray,如果本身就是json字符串的格式(即格式类型为String),那就不用转换,直接使用转换方法进行转换。

但是如果是嵌套字符串的话,从第一次转换后的java对象中取出来的是Object类型,这时候需要先用toString方法转换为String类型,然后再调用方法。

参考博文

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值