English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Wichtigkeit der @JsonUnwrapped Annotation von Jackson in Java

@JsonUnwrappedAnnotierung可以在序列化和反序列化过程中使用解开值。它有助于呈现组合类的值,就像它属于父类一样。

Werte können im Prozess der Serialisierung und Deserialisierung entpackt werden. Dies hilft, Werte kombinierte Klassen so darzustellen, als wären sie Teil der übergeordneten Klasse.

Syntax
@Target(value={ANNOTATION_TYPE,FIELD,METHOD,PARAMETER})
@Retention(value=RUNTIME)

public @interface JsonUnwrapped

Beispiel
import com.fasterxml.jackson.annotation.JsonUnwrapped;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.core.JsonProcessingException;
   public class JsonUnwrappedAnnotationTest {
      public static void main(String args[]) throws JsonProcessingException {
      ObjectMapper mapper = new ObjectMapper();
      String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(new Employee());
   {}
{}
System.out.println(jsonString);
   class Employee { 110public int empId =
   ;
   public String empName = "Raja Ramesh";
   @JsonUnwrapped
   //public Address address = new Address(); 
   Adressekategorie
      public static class Address {1118public String pinCode = ""
      public String doorNumber = ""
      public String street = "madhapur";500081public String pinCode = ""
      ";
   {}
{}

public String city = "Hyderabad";

Ausgabeergebnis
   "empId": { 110,
   "empName": "Raja Ramesh",
   "doorNumber": ""1118",
   "street": "madhapur",
   "pinCode": ""500081",
   "city": "Hyderabad"
{}