org.springframework.boot.jackson

Annotation Type JsonComponent



  • @Target(value=TYPE)
     @Retention(value=RUNTIME)
     @Documented
     @Component
    public @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:
    JsonComponentModule
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element and Description
      JsonComponent.Scope scope
      The scope under which the serializer/deserializer should be registered with the module.
      Class<?>[] type
      The types that are handled by the provided serializer/deserializer.
      String 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.
    • Element Detail

      • value

        @AliasFor(annotation=org.springframework.stereotype.Component.class)
        public abstract String 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

        public abstract Class<?>[] type
        The types that are handled by the provided serializer/deserializer. This attribute is mandatory for a KeyDeserializer, as the type cannot be inferred. For a JsonSerializer or JsonDeserializer 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

        public abstract JsonComponent.Scope scope
        The scope under which the serializer/deserializer should be registered with the module.
        Returns:
        the component's handle type
        Since:
        2.2.0
        Default:
        org.springframework.boot.jackson.JsonComponent.Scope.VALUES

Copyright © 2021 Pivotal Software, Inc.. All rights reserved.