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

Javaで@Exposeアノテーションを使用してJSONからフィールドを除外するにはどうすればよいですか?


Gson@Exposeアノテーション シリアル化または逆シリアル化するために公開されるかどうか(含まれるかどうかに関係なく)フィールドをマークするために使用できます。 @Exposeアノテーション 2つのパラメーターを取ることができ、各パラメーターは値 trueのいずれかを取ることができるブール値です。 またはfalse 。 GSONを@Exposeアノテーションに反応させるには、 GsonBuilderを使用してGsonインスタンスを作成する必要があります。 クラスであり、 excludeFieldsWithoutExposeAnnotation()を呼び出す必要があります メソッドでは、Exposeアノテーションがないすべてのフィールドをシリアル化または逆シリアル化の考慮から除外するようにGsonを構成します。

構文
public GsonBuilder excludeFieldsWithoutExposeAnnotation()
import com.google.gson.*;
import com.google.gson.annotations.*;
public class JsonExcludeAnnotationTest {
   public static void main(String args[]) {
      Employee emp = new Employee("Raja", 28, 40000.00);
      Gson gson = new GsonBuilder().setPrettyPrinting().create();
      String jsonStr = gson.toJson(emp);
      System.out.println(jsonStr);
      gson = new GsonBuilder().setPrettyPrinting().excludeFieldsWithoutExposeAnnotation().create();
      jsonStr = gson.toJson(emp);
      System.out.println(jsonStr);
   }
}
// Employee class
class Employee {
   @Expose(serialize = true, deserialize = true)
   public String name;
   @Expose(serialize = true, deserialize = true)
   public int age;
   @Expose(serialize = false, deserialize = false)
   public double salary;
   public Employee(String name, int age, double salary) {
      this.name = name;
      this.age = age;
      this.salary = salary;
   }
}
出力
{
 "name": "Raja",
 "age": 28,
 "salary": 40000.0
}
{
 "name": "Raja",
 "age": 28
}

  1. JavaのGsonライブラリを使用してJSON文字列をファイルに書き込む方法は?

    Gsonは、JavaオブジェクトをJSON表現に変換するために使用できるライブラリです。 。使用する主なクラスはGson new Gson()を呼び出すことで作成できます およびGsonBuilder クラスを使用してGsonインスタンスを作成できます。 JSON文字列をファイルに書き込む toJson()を使用する Gsonの方法 以下の例のクラス 例 import java.io.*; import com.google.gson.*; public class JSONToFileTest {    public static void main(String[

  2. JavaでGsonライブラリを使用してJSONをきれいに印刷するにはどうすればよいですか?

    Gson Googleによって作成されたJava用のJSONライブラリです。 Gsonを使用することで、JSONを生成できます JSONをJavaオブジェクトに変換します。デフォルトでは、GsonはJSONをコンパクト形式で印刷できます 。 Gsonプリティプリントを有効にするには 、 setPrettyPrinting()を使用してGsonインスタンスを構成する必要があります GsonBuilderのメソッド クラスとこのメソッドは、きれいに印刷するためにページに収まるJSONを出力するようにGsonを構成します。 構文 public GsonBuilder setPrettyPrint