The Flexjson เป็น น้ำหนักเบา ไลบรารี่สำหรับ การทำให้เป็นอนุกรม และ ดีซีเรียลไลซ์ ออบเจ็กต์ Java เข้าและออกจากรูปแบบ JSON อนุญาตให้คัดลอกอ็อบเจ็กต์ทั้งในระดับลึกและระดับตื้น . เพื่อเรียกใช้โปรแกรม Java ด้วย flexjon เราต้องนำเข้า flexjson แพ็คเกจ . เราสามารถดีซีเรียลไลซ์วัตถุ JSON เป็น Java โดยใช้ ดีซีเรียลไลซ์() วิธีการของ JSONDeserializer คลาสจะใช้เป็นอินพุตสตริง json และสร้างกราฟวัตถุที่พิมพ์แบบคงที่จากการแทนค่า json นั้น โดยค่าเริ่มต้น จะใช้คุณสมบัติคลาสในข้อมูล json เพื่อจับคู่ข้อมูล json ทั่วไปที่ไม่ได้พิมพ์ลงในประเภท Java เฉพาะ
ไวยากรณ์
public T deserialize(String input)
ในโปรแกรมด้านล่าง ยกเลิกการซีเรียลไลซ์วัตถุ JSON เป็น Java
ตัวอย่าง
import flexjson.*;
public class DeserializeJSONTest {
public static void main(String[] args) {
JSONDeserializer<Student> deserializer = new JSONDeserializer<Student>();
String jsonStr =
"{" +
"\"firstName\": \"Ravi\"," +
"\"lastName\": \"Chandra\"," +
"\"age\": 35," +
"\"class\": \"Student\"," +
"\"salary\": 50000.00," +
"}";
Student student = deserializer.deserialize(jsonStr);
System.out.println(student);
}
}
// Student class
class Student {
private String firstName;
private String lastName;
private int age;
private double salary;
public Student() {}
public Student(String firstName, String lastName, int age, double salary) {
super();
this.firstName = firstName;
this.lastName = lastName;
this.age = age;
this.salary = salary;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
public String toString() {
return "Student[ " +
"firstName = " + firstName +
", lastName = " + lastName +
", age = " + age +
", salary = " + salary +
" ]";
}
} ผลลัพธ์
Student[ firstName = Ravi, lastName = Chandra, age = 35, salary = 50000.0 ]