@Target({ANNOTATION_TYPE,TYPE}) @Retention(RUNTIME) public @interface JsonIgnoreType
Marker annotation that indicates that all properties that have type annotated with this annotation are to be ignored during serialization and deserialization.

Note that this does NOT mean that properties included by annotated type are ignored. Given hypothetical types:

  @JsonIgnoreType
  class Credentials {
     public String password;
  }

  class Settings {
     public int userId;
     public String name;
     public Credentials pwd;
  }
serialization of Settings would only include properties "userId" and "name" but NOT "pwd", since it is of type annotated with @JsonIgnoreType.

Note: annotation does have boolean 'value' property (which defaults to 'true'), so that it is actually possible to override value using mix-in annotations. Usually value is not specified as it defaults to true meaning annotation should take effect.

  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean
    Optional argument that defines whether this annotation is active or not.
  • Element Details

    • value

      boolean value
      Optional argument that defines whether this annotation is active or not. The only use for value 'false' if for overriding purposes (which is not needed often); most likely it is needed for use with "mix-in annotations" ("annotation overrides"). For most cases, however, default value of "true" is just fine and should be omitted.
      Default:
      true