Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package com.fasterxml.jackson.annotation;
 
Annotation used to indicate that a property should be serialized "unwrapped"; that is, if it would be serialized as JSON Object, its properties are instead included as properties of its containing Object. For example, consider case of POJO like:
  public class Parent {
    public int age;
    public Name name;
  }
  public class Name {
    public String first, last;
  }
which would normally be serialized as follows (assuming

JsonUnwrapped:
had no effect):
  {
    "age" : 18,
    "name" : {
      "first" : "Joey",
      "last" : "Sixpack"
    }
  }
can be changed to this:
  {
    "age" : 18,
    "first" : "Joey",
    "last" : "Sixpack"
  }
by changing Parent class to:
  public class Parent {
    public int age;
    @JsonUnwrapped
    public Name name;
  }
Annotation can only be added to properties, and not classes, as it is contextual.

Also note that annotation only applies if

  • Value is serialized as JSON Object (can not unwrap JSON arrays using this mechanism)
  • Serialization is done using BeanSerializer, not a custom serializer
  • No type information is added; if type information needs to be added, structure can not be altered regardless of inclusion strategy; so annotation is basically ignored.
public @interface JsonUnwrapped
{
    
Property that is usually only used when overriding (masking) annotations, using mix-in annotations. Otherwise default value of 'true' is fine, and value need not be explicitly included.
    boolean enabled() default true;

    
Optional property that can be used to add prefix String to use in front of names of properties that are unwrapped: this can be done for example to prevent name collisions.
    String prefix() default "";

    
Optional property that can be used to add suffix String to append at the end of names of properties that are unwrapped: this can be done for example to prevent name collisions.
    String suffix() default "";
New to GrepCode? Check out our FAQ X