Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaでflexjsonを使用してJSONをJavaオブジェクトに逆シリアル化するにはどうすればよいですか?


Flexjson 軽量です シリアル化用のライブラリ および逆シリアル化 JSON形式との間のJavaオブジェクトにより、オブジェクトの深いコピーと浅いコピーの両方が可能になります flexjonでJavaプログラムを実行するため 、 flexjsonをインポートする必要があります パッケージ deserialize()を使用して、JSONをJavaオブジェクトに逆シリアル化できます JSONDeserializerのメソッド クラスでは、入力としてjson文字列を受け取り、そのjson表現から静的型付きオブジェクトグラフを生成します。デフォルトでは、型指定されていない汎用jsonデータを特定のJavaタイプにマップするために、jsonデータのclassプロパティを使用します。

構文

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 ]

  1. JavaのGsonライブラリを使用してJavaオブジェクトをJSONに変換しますか?

    Gson はJava用のjsonライブラリであり、Googleによって作成され、JSONの生成に使用できます。 。 Gsonを使用することで、JSONを生成し、 bean/javaオブジェクトを変換できます。 JSONオブジェクトに。 toJson()を呼び出すことができます Gsonの方法 JavaオブジェクトをJSONオブジェクトに変換するクラス。 構文 public java.lang.String toJson(java.lang.Object src) 例 import com.google.gson.Gson; public class ConvertJavaObjectTo

  2. JavaでマップをJSONオブジェクトに変換するにはどうすればよいですか?

    JSON 軽量です 、テキストベース および言語に依存しない データ交換フォーマット。 JSONは、オブジェクトのような2つの構造化されたタイプを表すことができます およびアレイ 。オブジェクトは順序付けられていない キーのコレクション / value ペアと配列は順序付けられたシーケンスです 値の 。 マップをJSONに変換できます tを使用するオブジェクト oJSONString() メソッド(静的 )のorg.json.simple.JSONValue。 2つの重要な静的メソッドがあります: writeJSONString() オブジェクトをJSONテキストにエンコードして