Java中的JSON嵌套序列化是將一個對象或者一個數組中的屬性遞歸地轉化成JSON格式的字符串,包括對其嵌套屬性的轉化。
public class Person {
private String name;
private int age;
private List<Job> jobs;
// getter and setter
}
public class Job {
private String title;
private String location;
// getter and setter
}
在這里,我們先定義了兩個類Person和Job,其中Person中包含一個List<Job>類型的jobs屬性。在進行嵌套序列化時,我們需要讓Person類實現Serializable接口。
public class Person implements Serializable {
private String name;
private int age;
private List<Job> jobs;
// getter and setter
}
然后,我們就可以通過Gson的toJson方法進行嵌套序列化了。
Person person = new Person();
person.setName("Tom");
person.setAge(25);
Job job1 = new Job();
job1.setTitle("Java Developer");
job1.setLocation("Beijing");
Job job2 = new Job();
job2.setTitle("Product Manager");
job2.setLocation("Shanghai");
List<Job> jobs = new ArrayList<Job>();
jobs.add(job1);
jobs.add(job2);
person.setJobs(jobs);
Gson gson = new Gson();
String json = gson.toJson(person);
System.out.println(json);
結果如下:
{
"name": "Tom",
"age": 25,
"jobs": [
{
"title": "Java Developer",
"location": "Beijing"
},
{
"title": "Product Manager",
"location": "Shanghai"
}
]
}
通過以上代碼,我們可以看到,Person類中的jobs屬性已被嵌套序列化,并轉化成了JSON格式的字符串。在實際開發中,我們經常會遇到需要將一個對象或者一個數組序列化成JSON格式的字符串,并且其中包含嵌套屬性的情況。在這種情況下,我們可以使用Gson這樣的工具類來方便地進行嵌套序列化。