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
- Author:
- Phillip Webb, Paul Aly
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumThe various scopes under which a serializer/deserializer can be registered. -
Optional Element Summary
Optional ElementsModifier 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 aJsonSerializerorJsonDeserializerit 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
-