淘先锋技术网

首页 1 2 3 4 5 6 7

Json是一种轻量级的数据交换格式,它以键值对的形式存储数据,能够在不同平台和语言之间进行数据传输和解析。在Java中,可以使用Json框架将Java对象序列化为Json字符串或反序列化Json字符串为Java对象。但是当需要传输多个对象实体类时,我们该如何操作呢?

json传多个对象实体类

在传输多个对象实体类时,我们可以将它们封装到一个List集合中,再将这个List集合序列化为Json字符串。假设我们有两个对象实体类Person和Company,代码如下:


public class Person {
    private String name;
    private int age;
    // getter和setter省略
}

public class Company {
    private String name;
    private String address;
    // getter和setter省略
}

我们可以将它们封装到List集合中,如下:


List list = new ArrayList<>();
list.add(new Person("Tom", 20));
list.add(new Company("ABC", "Beijing"));

使用Json框架将List序列化为Json字符串:


String jsonString = JSON.toJSONString(list);
System.out.println(jsonString);

Json字符串的输出结果如下:


[{"age":20,"name":"Tom"},{"address":"Beijing","name":"ABC"}]

可以看到,Person和Company的属性都被包含在了Json字符串中,并用键值对的形式进行了存储。在反序列化时,只需将Json字符串转换为List集合即可:


List list = JSON.parseObject(jsonString, new TypeReference>(){});

这样就能够顺利地将Json字符串反序列化为List集合,其中的对象实体类也能够得到正确的还原。