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/std/StringDeserializer.java

    package com.fasterxml.jackson.databind.deser.std;
    
    import java.io.IOException;
    
    import com.fasterxml.jackson.core.*;
    import com.fasterxml.jackson.databind.*;
    import com.fasterxml.jackson.databind.annotation.JacksonStdImpl;
    import com.fasterxml.jackson.databind.jsontype.TypeDeserializer;
    import com.fasterxml.jackson.databind.type.LogicalType;
    
    @JacksonStdImpl
    public class StringDeserializer extends StdScalarDeserializer<String> // non-final since 2.9
    {
        private static final long serialVersionUID = 1L;
    
        /**
         * @since 2.2
         */
        public final static StringDeserializer instance = new StringDeserializer();
    
        public StringDeserializer() { super(String.class); }
    
        @Override // since 2.12
        public LogicalType logicalType() {
            return LogicalType.Textual;
        }
    
        // since 2.6, slightly faster lookups for this very common type
        @Override
        public boolean isCachable() { return true; }
    
        @Override // since 2.9
        public Object getEmptyValue(DeserializationContext ctxt) throws JsonMappingException {
            return "";
        }
    
        @Override
        public String deserialize(JsonParser p, DeserializationContext ctxt) throws IOException
        {
            // The critical path: ensure we handle the common case first.
            if (p.hasToken(JsonToken.VALUE_STRING)) {
                return p.getText();
            }
            // [databind#381]
            if (p.hasToken(JsonToken.START_ARRAY)) {
                return _deserializeFromArray(p, ctxt);
            }
            return _parseString(p, ctxt, this);
        }
    
        // Since we can never have type info ("natural type"; String, Boolean, Integer, Double):
        // (is it an error to even call this version?)
        @Override
        public String deserializeWithType(JsonParser p, DeserializationContext ctxt,
                TypeDeserializer typeDeserializer) throws IOException {
            return deserialize(p, ctxt);
        }
    }
    

    com/fasterxml/jackson/databind/deser/std/StringDeserializer.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, 80121👍, 0💬