Package org.springframework.boot.jackson
Annotation Interface JsonComponent
@Component
that provides JsonSerializer
,
JsonDeserializer
or KeyDeserializer
implementations to be registered
with Jackson when JsonComponentModule
is in use. Can be used to annotate
implementations directly or a class that contains them as inner-classes. For example:
@JsonComponent public class CustomerJsonComponent { public static class Serializer extends JsonSerializer<Customer> { // ... } public static class Deserializer extends JsonDeserializer<Customer> { // ... } }
- Since:
- 1.4.0
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
The various scopes under which a serializer/deserializer can be registered. -
Optional Element Summary
Modifier and TypeOptional ElementDescriptionThe scope under which the serializer/deserializer should be registered with the module.Class<?>[]
The types that are handled by the provided serializer/deserializer.The value may indicate a suggestion for a logical component name, to be turned into a Spring bean in case of an autodetected component.
-
Element Details
-
value
The value may indicate a suggestion for a logical component name, to be turned into a Spring bean in case of an autodetected component.- Returns:
- the component name
- Default:
- ""
-
type
Class<?>[] typeThe types that are handled by the provided serializer/deserializer. This attribute is mandatory for aKeyDeserializer
, as the type cannot be inferred. For aJsonSerializer
orJsonDeserializer
it can be used to limit handling to a subclasses of type inferred from the generic.- Returns:
- the types that should be handled by the component
- Since:
- 2.2.0
- Default:
- {}
-
scope
JsonComponent.Scope scopeThe scope under which the serializer/deserializer should be registered with the module.- Returns:
- the component's handle type
- Since:
- 2.2.0
- Default:
- VALUES
-