Jackson Data Binding Source Code

Jackson is "the Java JSON library" or "the best JSON parser for Java". Or simply as "JSON for Java".

  • Jackson Data Binding module allows you to converts JSON to and from POJO (Plain Old Java Object) using property accessor or using annotations.
  • Jackson Databind Source Code files are provided in the source packge (jackson-databind-2.14.0-sources.jar). You can download it at Jackson Maven Website.

    You can also browse Jackson Databind Source Code below:

    ✍: FYIcenter.com

    com/fasterxml/jackson/databind/deser/NullValueProvider.java

    package com.fasterxml.jackson.databind.deser;
    
    import com.fasterxml.jackson.databind.DeserializationContext;
    import com.fasterxml.jackson.databind.JsonMappingException;
    import com.fasterxml.jackson.databind.util.AccessPattern;
    
    /**
     * Helper interface implemented by classes that are to be used as
     * null providers during deserialization. Most importantly implemented by
     * {@link com.fasterxml.jackson.databind.JsonDeserializer} (as a mix-in
     * interface), but also by converters used to support more configurable
     * null replacement.
     *
     * @since 2.9
     */
    public interface NullValueProvider
    {
        /**
         * Method called to possibly convert incoming `null` token (read via
         * underlying streaming input source) into other value of type accessor
         * supports. May return `null`, or value compatible with type binding.
         *<p>
         * NOTE: if {@link #getNullAccessPattern()} returns `ALWAYS_NULL` or
         * `CONSTANT`, this method WILL NOT use provided `ctxt` and it may thus
         * be passed as `null`.
         */
        public Object getNullValue(DeserializationContext ctxt) throws JsonMappingException;
    
        /**
         * Accessor that may be used to determine if and when provider must be called to
         * access null replacement value.
         */
        public AccessPattern getNullAccessPattern(); 
    
        /**
         * Method called to determine placeholder value to be used for cases
         * where no value was obtained from input but we must pass a value
         * nonetheless: the common case is that of Creator methods requiring
         * passing a value for every parameter.
         * Usually this is same as {@link #getNullValue} (which in turn
         * is usually simply Java {@code null}), but it can be overridden
         * for specific types: most notable scalar types must use "default"
         * values.
         *<p>
         * This method needs to be called every time a determination is made.
         *<p>
         * Default implementation simply calls and returns {@link #getNullValue}.
         *
         * @since 2.13
         */
        default Object getAbsentValue(DeserializationContext ctxt) throws JsonMappingException {
            return getNullValue(ctxt);
        }
    }
    

    com/fasterxml/jackson/databind/deser/NullValueProvider.java

     

    Or download all of them as a single archive file:

    File name: jackson-databind-2.14.0-sources.jar
    File size: 1187952 bytes
    Release date: 2022-11-05
    Download 
    

     

    Jackson Annotations Source Code

    Download and Install Jackson Binary Package

    Downloading and Reviewing jackson-*.jar

    ⇑⇑ Jackson - Java JSON library

    2022-03-29, 80054👍, 0💬