fastjson如何将json转成对象

2024-11-07 07:57:33

1、用代码IDE新建一个工程,并添加fastjson依赖包,本文用的是fastjosn 1.2.28

fastjson如何将json转成对象

2、新建一个用于转换成的对象,以“人”烂瘀佐栾这个对象为例进行说明。PersonBean完整定义如下:/** * Created by yc on 12/11/17. */public class PersonBean { private String name; private short age; public PersonBean(){} public PersonBean(String name,short age){ this.name=name; this.age=age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public short getAge() { return age; } public void setAge(short age) { this.age = age; } @Override public String toString() { return "PersonBean{" + "name='" + name + '\'' + ", age=" + age + '}'; }}

fastjson如何将json转成对象

3、接着创建一个测试类,用于将指定的JSON串转换为对象(此为转换为PersonBean对象),测试类的完苻抽苍黪整内容如下:import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.TypeReference;import java.util.List;/** * Created by yc on 12/11/17. */public class JsonToObejectTest { public static void main(String[] args) { //解析对象 String jsonString = "[{\"age\":11,\"name\":\"s1\"}," + "{\"age\":12,\"name\":\"s2\"}," + "{\"age\":13,\"name\":\"s3\"}," + "{\"age\":14,\"name\":\"s4\"}," + "{\"age\":15,\"name\":\"s5\"}," + "{\"age\":16,\"name\":\"s6\"}]"; System.out.println("=============jsonString================"); System.out.println(jsonString); //List<PersonBean> personBeanList = JSON.parseArray(jsonString, PersonBean.class); List<PersonBean> personBeanList = JSON.parseObject(jsonString,new TypeReference<List<PersonBean>>(){}); System.out.println("==========List<PersonBean>============="); System.out.println(personBeanList.toString()); }}

fastjson如何将json转成对象

4、运行测试类,可以看到JSON串已经成功转换为PersonBean对象

fastjson如何将json转成对象

5、上面测试类中的核心代码为:List<PersonBean> personBeanList =JSON.parseObject(jsonString,new TypeReference<List<PersonBean>>(){});此外,核心代码还可以用下面的一行代码代替List<PersonBean> personBeanList = JSON.parseArray(jsonString, PersonBean.class);

fastjson如何将json转成对象

6、以上两个核心代码的函数分别为parseObject和parseArray,那么这两个有什么区别呢?解析:根据源码可以看出,parseObject和parseArray最终都是调用了父类JSON的方法用parseObject(String text),所以两者没有什么大区别。

fastjson如何将json转成对象
猜你喜欢