Main public API classes of the core streaming JSON processor: most importantly
JsonFactoryused for constructing JSON parser (
JsonParser) and generator (
Public API of the higher-level mapping interfaces ("Mapping API") is found from the "jackson-databind" bundle, except for following base interfaces that are defined here:
TreeNodeis included within Streaming API to support integration of the Tree Model (which is based on
JsonNode) with the basic parsers and generators (iff using mapping-supporting factory: which is part of Mapping API, not core)
ObjectCodecis included so that reference to the object capable of serializing/deserializing Objects to/from JSON (usually,
com.fasterxml.jackson.databind.ObjectMapper) can be exposed, without adding direct dependency to implementation.
Interface Summary Interface Description FormatFeatureMarker interface that is to be implemented by data format - specific features. FormatSchema JsonTokenIdInterface defined to contain ids accessible with
PrettyPrinterInterface for objects that implement pretty printer functionality, such as indentation. SerializableStringInterface that defines how Jackson package can interact with efficient pre-serialized or lazily-serialized and reused String representations. TreeNodeMarker interface used to denote JSON Tree nodes, as far as the core package knows them (which is very little): mostly needed to allow
ObjectCodecto have some level of interoperability.
VersionedInterface that those Jackson components that are explicitly versioned will implement.
Class Summary Class Description Base64VariantClass used to define specific details of which variant of Base64 encoding/decoding is to be used. Base64Variants JsonFactory JsonFactoryBuilder JsonGeneratorBase class that defines public API for writing JSON content. JsonLocationObject that encapsulates Location information used for reporting parsing (or potentially generation) errors, as well as current location within input streams. JsonParserBase class that defines public API for reading JSON content. JsonpCharacterEscapesConvenience
JsonPointerImplementation of JSON Pointer specification. JsonStreamContextShared base class for streaming processing contexts used during reading and writing of Json content using Streaming API. ObjectCodec TokenStreamFactoryIntermediate base class for actual format-specific factories for constructing parsers (reading) and generators (writing). TreeCodecInterface that defines objects that can read and write
TreeNodeinstances using Streaming API.
TSFBuilder<F extends JsonFactory,B extends TSFBuilder<F,B>>Since 2.10, Builder class is offered for creating token stream factories with difference configurations: with 3.x they will be fully immutable. VersionObject that encapsulates versioning information of a component.
Enum Summary Enum Description Base64Variant.PaddingReadBehaviourDefines how the Base64Variant deals with Padding while reading JsonEncodingEnumeration that defines legal encodings that can be used for JSON content, based on list of allowed encodings from JSON specification. JsonFactory.FeatureEnumeration that defines all on/off features that can only be changed for
JsonGenerator.FeatureEnumeration that defines all togglable features for generators. JsonParser.FeatureEnumeration that defines all on/off features for parsers. JsonParser.NumberTypeEnumeration of possible "native" (optimal) types that can be used for numbers. JsonTokenEnumeration for basic token types used for returning results of parsing JSON content. StreamReadCapabilitySet of on/off capabilities that a
JsonParserfor given format (or in case of buffering, original format) has.
StreamReadFeatureToken reader (parser) features not-specific to any particular format backend. StreamWriteCapabilitySet of on/off capabilities that a
JsonGeneratorfor given format (or in case of buffering, original format) has.
StreamWriteFeatureToken writer (generator) features not-specific to any particular format backend.
Exception Summary Exception Description JacksonExceptionBase class for all Jackson-produced checked exceptions. JsonGenerationExceptionException type for exceptions during JSON writing, such as trying to output content in wrong context (non-matching end-array or end-object, for example). JsonParseExceptionException type for parsing problems, used when non-well-formed content (content that does not conform to JSON syntax as per specification) is encountered. JsonProcessingExceptionIntermediate base class for all problems encountered when processing (parsing, generating) JSON content that are not pure I/O problems.