Jackson Core (Data-Binding) Annotations

Here is a brief outline of Jackson annotations that exist as of version 1.9 (with notes on 2.0).

Important note: Jackson 1.x and 2.x annotations live in different Java and Maven packages: see Jackson 2.0 for full explanation:

Annotations contained are mostly same, except where otherwise denoted (some only added in 2.0; others deprecated in 1.x, removed from 2.0)

Annotation class: meta annotations

Annotation class: general

Annotation class: Polymorphic type handling

Starting with version 1.5, Jackson allows fully configurable Polymorphic Type Handling, using following annotations:

Annotation class: Instance dependencies

Cyclic dependencies are tricky things to handle. Jackson offers some annotation-based support for handling them:

Annotation class: serialization

Jackson 1.0 also defined following legacy annotations

Annotation class: deserialization

Jackson 1.0 also defined following legacy annotations:

Regarding type-definining annotations: since annotations can not defined Generic type information, but formal declarations can, the actual type information will be a combination of the two: for example, if formal type is _List<String>_, and one of annotations above defines real class to be _ArrayList_, actual type used would be _ArrayList<String>_.

See also


JacksonAnnotations (last edited 2012-08-14 20:01:34 by TatuSaloranta)

Copyright ©2009 FasterXML, LLC