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

จะทำการดีซีเรียลไลซ์วัตถุ JSON เป็น Java โดยใช้ flexjson ใน Java ได้อย่างไร


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 ]