Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

วิธี Serialize Array of Objects ด้วย Flexjson ใน Java

Flexjson เป็นไลบรารี Lightweight สำหรับ Serialize และ Deserialize Java Object เป็น/จาก JSON Format สามารถ Serialize Array of Objects ได้โดยใช้เมธอด serialize() ของคลาส JSONSerializer ทำ Shallow Serialization

Syntax

public String serialize(Object target)

ตัวอย่าง: Serialize Student Array

import flexjson.JSONSerializer;

public class JsonSerializeArrayTest {
    public static void main(String[] args) {
        JSONSerializer serializer = new JSONSerializer().prettyPrint(true);
        
        Student stud1 = new Student("Adithya", "Sai", 28, "Hyderabad");
        Student stud2 = new Student("Jai", "Dev", 30, "Chennai");
        Student stud3 = new Student("Ravi", "Chandra", 35, "Pune");
        
        Student[] students = {stud1, stud2, stud3};
        String jsonStr = serializer.serialize(students);
        System.out.println(jsonStr);
    }
}

// Student class
class Student {
    private String firstName;
    private String lastName;
    private int age;
    private String address;
    
    public Student() {}
    public Student(String firstName, String lastName, int age, String address) {
        this.firstName = firstName;
        this.lastName = lastName;
        this.age = age;
        this.address = address;
    }
    
    // getters...
    public String toString() {
        return "Student[ firstName = " + firstName + ", lastName = " + lastName + 
               ", age = " + age + ", address = " + address + " ]";
    }
}

ผลลัพธ์

[
  {
    "address": "Hyderabad",
    "age": 28,
    "class": "Student",
    "firstName": "Adithya",
    "lastName": "Sai"
  },
  {
    "address": "Chennai",
    "age": 30,
    "class": "Student",
    "firstName": "Jai",
    "lastName": "Dev"
  },
  {
    "address": "Pune",
    "age": 35,
    "class": "Student",
    "firstName": "Ravi",
    "lastName": "Chandra"
  }
]

หมายเหตุ: Flexjson เพิ่ม field "class" อัตโนมัติเพื่อระบุ Type รองรับ Array, List, Collection ทุกประเภท