Inhaltsverzeichnis
Beispiel
Ausgabe
Heim Java javaLernprogramm Wann sollten @JsonManagedReference- und @JsonBackReference-Annotationen in Java mit Jackson verwendet werden?

Wann sollten @JsonManagedReference- und @JsonBackReference-Annotationen in Java mit Jackson verwendet werden?

Sep 05, 2023 pm 10:33 PM
jackson @jsonmanagedreference @jsonbackreference

Die

Wann sollten @JsonManagedReference- und @JsonBackReference-Annotationen in Java mit Jackson verwendet werden?

@JsonManagedReference und @JsonBackReference Annotationen können verwendet werden, um JSON-Strukturen auf >bidirektionale Weise zu erstellen. Die Annotation @JsonManagedReference ist eine Vorwärtsreferenz, die während der Serialisierung einbezogen wird, während die Annotation @JsonBackReference eine Rückreferenz ist, die während der Serialisierung weggelassen wird.

Im folgenden Beispiel können wir die Annotationen @JsonManagedReference und @JsonBackReference implementieren.

Beispiel

import java.util.*;
import com.fasterxml.jackson.annotation.JsonManagedReference;
import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.core.JsonProcessingException;
public class ManagedReferenceBackReferenceTest {
   public static void main(String args[]) throws JsonProcessingException {
      BackReferenceBeanTest testBean = new BackReferenceBeanTest(110, "Sai Chaitanya");
      ManagedReferenceBeanTest bean = new ManagedReferenceBeanTest(135, "Adithya Ram", testBean);
      testBean.addEmployees(bean);
      ObjectMapper mapper = new ObjectMapper();
      String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(bean);
      System.out.println(jsonString);
   }
}
class ManagedReferenceBeanTest {
   public int empId = 115;
   public String empName = "Raja Ramesh";
   @JsonManagedReference
   public BackReferenceBeanTest manager;
   public ManagedReferenceBeanTest(int empId, String empName, BackReferenceBeanTest manager) {
      this.empId = empId;
      this.empName = empName;
      this.manager = manager;
   }
}
class BackReferenceBeanTest {
   public int empId = 125;
   public String empName = "Jai Dev";
   @JsonBackReference
   public List<ManagedReferenceBeanTest> list;
   public BackReferenceBeanTest(int empId, String empName) {
      this.empId = empId;
      this.empName = empName;
      list = new ArrayList<ManagedReferenceBeanTest>();
   }
   public void addEmployees(ManagedReferenceBeanTest managedReferenceBeanTest) {
      list.add(managedReferenceBeanTest);
   }
}
Nach dem Login kopieren

Ausgabe

{
   "empId" : 135,
   "empName" : "Adithya Ram",
   "manager" : {
      "empId" : 110,
      "empName" : "Sai Chaitanya"
   }
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWann sollten @JsonManagedReference- und @JsonBackReference-Annotationen in Java mit Jackson verwendet werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

CSV mithilfe der Jackson-Bibliothek in Java in JSON konvertieren? CSV mithilfe der Jackson-Bibliothek in Java in JSON konvertieren? Aug 18, 2023 pm 11:49 PM

AJackson ist eine Java-JSON-API, die verschiedene Möglichkeiten zur Verarbeitung von JSON bietet. Wir können CSV-Daten in JSON-Daten konvertieren, indem wir die CsvMapper-Klasse verwenden, einen speziellen ObjectMapper mit erweiterter Funktionalität zum Konvertieren von POJOs in CsvSchema-Instanzen. Mit der Methode read() können wir einen ObjectReader mit Standardeinstellungen erstellen. Zum Konvertieren müssen wir com.fasterxml.jac importieren

So lösen Sie das Problem der Angabe der Jackson-Version beim SpringBoot-Upgrade So lösen Sie das Problem der Angabe der Jackson-Version beim SpringBoot-Upgrade May 12, 2023 pm 02:13 PM

[Schwachstellenhinweis] Am 19. Februar veröffentlichte NVD einen Sicherheitshinweis, in dem eine Sicherheitslücke (CVE-2020-8840) zur Remotecodeausführung in jackson-databind offengelegt wurde, die durch JNDI-Injection mit einem CVSS-Score von 9,8 verursacht wurde. Der betroffenen Version von jackson-databind fehlen bestimmte xbean-reflect/JNDI-Blacklist-Klassen, wie z. B. org.apache.xbean.propertyeditor.JndiConverter, was dazu führen kann, dass Angreifer JNDI-Injection verwenden, um eine Remotecodeausführung zu erreichen. Derzeit hat der Hersteller eine neue Version veröffentlicht, um die Schwachstellenbehebung abzuschließen. Relevante Benutzer werden gebeten, zum Schutz rechtzeitig ein Upgrade durchzuführen. Da das S im Projekt verwendet wird

XML mit der Jackson-Bibliothek in Java in POJO konvertieren? XML mit der Jackson-Bibliothek in Java in POJO konvertieren? Aug 30, 2023 am 10:21 AM

Der JSON Jackson ist eine Bibliothek für Java. Er verfügt über sehr leistungsstarke Datenbindungsfunktionen und stellt ein Framework bereit, um benutzerdefinierte Java-Objekte in JSON zu serialisieren und JSON zurück in ein Java-Objekt zu deserialisieren. Mithilfe der readValue()-Methode des XMLMappers können wir auch ein XML-Format in das POJO-Objekt konvertieren

POJO mithilfe der Jackson-Bibliothek in Java in XML konvertieren? POJO mithilfe der Jackson-Bibliothek in Java in XML konvertieren? Sep 18, 2023 pm 02:21 PM

Jackson ist eine Java-basierte Bibliothek, die zum Konvertieren von Java-Objekten in JSON und JSON in Java-Objekte nützlich ist. JacksonAPI ist schneller als andere APIs, benötigt weniger Speicherbereich und eignet sich für große Objekte. Wir verwenden die Methode writeValueAsString() der Klasse XmlMapper, um das POJO in das XML-Format zu konvertieren. Die entsprechende POJO-Instanz muss als Parameter an diese Methode übergeben werden. Syntax publicStringwriteValueAsString(Objectvalue)throwsJsonProcessingExceptionExampleimp

Wie konvertiere ich ein JSON-Objekt mit Jackson in einen Enum-Typ in Java? Wie konvertiere ich ein JSON-Objekt mit Jackson in einen Enum-Typ in Java? Sep 05, 2023 pm 12:13 PM

JSONObject kann Text in einer Zeichenfolge analysieren, um ein Objekt vom Typ Map zu generieren. Aufzählungen können verwendet werden, um Sammlungen von Konstanten zu definieren. Wir können Aufzählungen verwenden, wenn wir eine vordefinierte Liste von Werten benötigen, die keine numerischen oder Textdaten darstellen. Mit der Methode readValue() der Klasse ObjectMapper können wir ein JSON-Objekt in eine Aufzählung umwandeln. Im folgenden Beispiel können wir die Jackson-Bibliothek verwenden, um ein JSON-Objekt in eine Java-Enumeration zu konvertieren/deserialisieren. Beispiel importcom.fasterxml.jackson.databind.*;publicclassJSONToEnumTest{ &

Wie erhalte ich die Standardeinstellungen von JSONParser mit Jackson in Java? Wie erhalte ich die Standardeinstellungen von JSONParser mit Jackson in Java? Sep 12, 2023 am 11:57 AM

Die Standardeinstellungen für alle JSON-Parser können mithilfe der JsonParser.Feature-Enumeration dargestellt werden. JsonParser.Feature.values() gibt alle für JSONParser verfügbaren Funktionen zurück, aber ob eine Funktion für einen bestimmten Parser aktiviert oder deaktiviert ist, kann mit der isEnabled()-Methode von JsonParser ermittelt werden. Syntax publicstaticenumJsonParser.FeatureextendsEnum<JsonParser.Feature>Beispiel importcom.fas

So verwenden Sie die Jackson-Serialisierung, um eine Datendesensibilisierung in Java zu erreichen So verwenden Sie die Jackson-Serialisierung, um eine Datendesensibilisierung in Java zu erreichen Apr 18, 2023 am 09:46 AM

1. Hintergrund: Einige vertrauliche Informationen im Projekt können nicht direkt angezeigt werden, z. B. Mobiltelefonnummern, Ausweise, Nummernschilder und andere Informationen. Daten müssen bei der Anzeige desensibilisiert werden, um den Verlust der Privatsphäre des Kunden zu verhindern. Unter Desensibilisierung versteht man die Behandlung eines Teils der Daten mit Desensibilisierungssymbolen (*). 2. Wenn das Ziel Daten vom Server zurückgibt, verwenden Sie die Jackson-Serialisierung, um die Desensibilisierung der Daten abzuschließen und eine desensibilisierte Anzeige vertraulicher Informationen zu erreichen. Reduzieren Sie die Anzahl wiederholter Entwicklungen und verbessern Sie die Entwicklungseffizienz, um einheitliche und effektive Desensibilisierungsregeln zu erstellen. Dies kann auf der Desensibilisierungsmethode zum Umschreiben der Standard-Desensibilisierungsimplementierung basieren, um die Desensibilisierungsanforderungen skalierbarer und anpassbarer personalisierter Geschäftsszenarien zu erfüllen Basierend auf Jackson Custom desensibilisierte Serialisierungsimplementierung von StdSerializer: alle Standard

Wann sollte die Annotation @ConstructorProperties verwendet werden, wenn Jackson in Java verwendet wird? Wann sollte die Annotation @ConstructorProperties verwendet werden, wenn Jackson in Java verwendet wird? Aug 27, 2023 pm 08:53 PM

Die Annotation @ConstructorProperties stammt aus dem Paket java.bean und wird verwendet, um JSON über einen annotierten Konstruktor in Java-Objekte zu deserialisieren. Diese Anmerkung wird ab Jackson 2.7 unterstützt. Die Funktionsweise dieser Annotation ist sehr einfach: Anstatt jeden Parameter im Konstruktor mit Anmerkungen zu versehen, können wir ein Array bereitstellen, das die Eigenschaftsnamen für jeden Konstruktorparameter enthält. Syntax@Documented@Target(value=CONSTRUCTOR)@Retention(value=RUNTIME)public@interfaceConstructorPropertiesExample impo

See all articles