org.codehaus.jackson.map.annotate).
Also contains parameter types (mostly enums) needed by annotations.
Note that prior versions (1.x) contained these annotations within 'core' jar, as part of Streaming API.
| Modifier and Type | Interface and Description |
|---|---|
| public interface | JacksonAnnotationValue<A extends Annotation>
Marker interface used by value classes like |
| public interface | ObjectIdResolver
Definition of API used for resolving actual Java object from
Object Identifiers (as annotated using |
| Modifier and Type | Annotation and Description |
|---|---|
| public @interface | JacksonAnnotation
Meta-annotation (annotations used on other annotations) used for marking all annotations that are part of Jackson package. |
| public @interface | JacksonAnnotationsInside
Meta-annotation (annotations used on other annotations) used for indicating that instead of using target annotation (annotation annotated with this annotation), Jackson should use meta-annotations it has. |
| public @interface | JacksonInject
Jackson-specific annotation used for indicating that value of
annotated property will be "injected", i.e. set based on value
configured by |
| public @interface | JsonAlias
Annotation that can be used to define one or more alternative names for a property, accepted during deserialization as alternative to the official name. |
| public @interface | JsonAnyGetter
Marker annotation that can be used to define a non-static, no-argument method to be an "any getter"; accessor for getting a set of key/value pairs, to be serialized as part of containing POJO (similar to unwrapping) along with regular property values it has. |
| public @interface | JsonAnySetter
Marker annotation that can be used to define a logical "any setter" mutator --
either using non-static
two-argument method (first argument name of property, second value
to set) or a field (of type |
| public @interface | JsonAutoDetect
Class annotation that can be used to define which kinds of Methods are to be detected by auto-detection, and with what minimum access level. |
| public @interface | JsonBackReference
Annotation used to indicate that associated property is part of two-way linkage between fields; and that its role is "child" (or "back") link. |
| public @interface | JsonClassDescription
Annotation used to define a human-readable description for annotated type (class). |
| public @interface | JsonCreator
Marker annotation that can be used to define constructors and factory methods as one to use for instantiating new instances of the associated class. |
| public @interface | JsonEnumDefaultValue
Marker annotation that can be used to define a default value used when trying to deserialize unknown Enum values. |
| public @interface | JsonFilter
Annotation used to indicate which logical filter is to be used
for filtering out properties of type (class) annotated;
association made by this annotation declaring ids of filters,
and
Filters to use are usually of type
Since 2.3, this annotation can also be used on properties (fields, methods, constructor parameters). |
| public @interface | JsonFormat
General-purpose annotation used for configuring details of how values of properties are to be serialized. |
| public @interface | JsonGetter
Marker annotation that can be used to define a non-static, no-argument value-returning (non-void) method to be used as a "getter" for a logical property. |
| public @interface | JsonIdentityInfo
Annotation used for indicating that values of annotated type or property should be serializing so that instances either contain additional object identifier (in addition actual object properties), or as a reference that consists of an object id that refers to a full serialization. |
| public @interface | JsonIdentityReference
Optional annotation that can be used for customizing details of a reference
to Objects for which "Object Identity" is enabled (see |
| public @interface | JsonIgnore
Marker annotation that indicates that the logical property that
the accessor (field, getter/setter method or Creator parameter
[of |
| public @interface | JsonIgnoreProperties
Annotation that can be used to either suppress serialization of properties (during serialization), or ignore processing of JSON properties read (during deserialization). |
| 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. |
| public @interface | JsonInclude
Annotation used to indicate when value of the annotated property (when used for a field, method or constructor parameter), or all properties of the annotated class, is to be serialized. |
| public @interface | JsonIncludeProperties
Annotation that can be used to either only include serialization of properties (during serialization), or only include processing of JSON properties read (during deserialization). |
| public @interface | JsonKey
Marker annotation that indicates that the value of annotated accessor (either field or "getter" method [a method with non-void return type, no args]) is to be used as the single value to serialize for the instance. |
| public @interface | JsonManagedReference
Annotation used to indicate that annotated property is part of two-way linkage between fields; and that its role is "parent" (or "forward") link. |
| public @interface | JsonMerge
Annotation to specify whether annotated property value should use "merging" approach: merging meaning that the current value is first accessed (with a getter or field) and then modified with incoming data. |
| public @interface | JsonProperty
Marker annotation that can be used to define a non-static method as a "setter" or "getter" for a logical property accessor (depending on its signature), or a non-static Object field to be used (serialized, deserialized) as a logical property (to assign value or get value from) Value ("") indicates that the name of field (or, derived name of an accessor method (setter / getter)) is to be used as the property name without any modifications; a non-empty value can be used to specify a different name. |
| public @interface | JsonPropertyDescription
Annotation used to define a human-readable description for a logical property. |
| public @interface | JsonPropertyOrder
Annotation that can be used to define ordering (possibly partial) to use when serializing object properties. |
| public @interface | JsonRawValue
Marker annotation that indicates that the annotated method or field should be serialized by including literal String value of the property as is, without quoting of characters. |
| public @interface | JsonRootName
Annotation similar to |
| public @interface | JsonSetter
Annotation that can be used to define a non-static,
single-argument method to be used as a "setter" for a logical property
as an alternative to recommended
|
| public @interface | JsonSubTypes
Annotation used with |
| public @interface | JsonTypeId
Marker annotation that can be used on a property accessor (field, getter or setter, constructor parameter) to indicate that the property is to contain type id to use when including polymorphic type information. |
| public @interface | JsonTypeInfo
Annotation used for configuring details of if and how type information is used with JSON serialization and deserialization, to preserve information about actual class of Object instances. |
| public @interface | JsonTypeName
Annotation used for binding logical name that the annotated class has. |
| public @interface | JsonUnwrapped
Annotation used to indicate that a POJO-valued property should be serialized "unwrapped" -- that is, if it would be serialized as Object value, its properties are instead included as properties of its containing Object -- and deserialized reproducing "missing" structure. |
| public @interface | JsonValue
Marker annotation that indicates that the value of annotated accessor (either field or "getter" method [a method with non-void return type, no args]) is to be used as the single value to serialize for the instance, instead of the usual method of collecting properties of value. |
| public @interface | JsonView
Annotation used for indicating view(s) that the property that is defined by method or field annotated is part of. |
| Modifier and Type | Class and Description |
|---|---|
| public abstract class | ObjectIdGenerator<
Type of Object Identifiers produced. T>Definition of API used for constructing Object Identifiers
(as annotated using |
| public class | ObjectIdGenerators
Container class for standard |
| public class | SimpleObjectIdResolver
Simple implementation of |
| Modifier and Type | Enum and Description |
|---|---|
| public enum | Nulls
Enumeration used with |
| public enum | OptBoolean
Optional Boolean value ("nullean"). |
| public enum | PropertyAccessor
Enumeration used to define kinds of elements (called "property accessors")
that annotations like |