Heim > Java > javaLernprogramm > Wie schließe ich ein Feld mithilfe der @Expose-Annotation in Java aus JSON aus?

Wie schließe ich ein Feld mithilfe der @Expose-Annotation in Java aus JSON aus?

PHPz
Freigeben: 2023-09-16 21:49:02
nach vorne
695 Leute haben es durchsucht

Wie schließe ich ein Feld mithilfe der @Expose-Annotation in Java aus JSON aus?

Gson @Expose-Annotation kann verwendet werden, um zu markieren, ob ein Feld für die Serialisierung oder Deserialisierung verfügbar gemacht (enthalten oder nicht) ist. Die @Expose-Annotation kann zwei Parameter annehmen. Jeder Parameter ist ein boolescher Wert, der den Wert true oder false annehmen kann. Damit GSON auf die @Expose-Annotation reagieren kann, müssen wir eine Gson-Instanz mit der Klasse GsonBuilder erstellen und die Methode excludeFieldsWithoutExposeAnnotation() aufrufen, die Gson so konfiguriert, dass alle Felder ohne Expose-Annotation von der Serialisierung ausgeschlossen werden Deserialisierung Serialisierung.

Syntax

public GsonBuilder excludeFieldsWithoutExposeAnnotation()
Nach dem Login kopieren

Beispiel

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)<strong>
</strong>   public double salary;
   public Employee(String name, int age, double salary) {
      this.name = name;
      this.age = age;
      this.salary = salary;
   }
}
Nach dem Login kopieren

Ausgabe

{
 "name": "Raja",
 "age": 28,
 "salary": 40000.0
}
{
 "name": "Raja",
 "age": 28
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie schließe ich ein Feld mithilfe der @Expose-Annotation in Java aus JSON aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage