Джексон - Класс ObjectMapper

Введение

ObjectMapper - это основной класс акторов библиотеки Джексона. Класс ObjectMapper ObjectMapper предоставляет функциональные возможности для чтения и записи JSON либо в базовые объекты POJO (обычные старые объекты Java) и из них, либо в модель дерева JSON общего назначения (JsonNode) и обратно, а также связанные функции для выполнения преобразований. Он также имеет широкие возможности настройки для работы как с разными стилями содержимого JSON, так и для поддержки более сложных концепций объектов, таких как полиморфизм и идентичность объектов. ObjectMapper также действует как фабрика для более продвинутых классов ObjectReader и ObjectWriter.

Объявление класса

Ниже приводится декларация для com.fasterxml.jackson.databind.ObjectMapper класс -

public class ObjectMapper
   extends ObjectCodec
      implements Versioned, Serializable

Вложенные классы

S.No. Класс и описание
1 static class ObjectMapper.DefaultTypeResolverBuilder

Настроенный TypeResolverBuilder, который предоставляет построители преобразователей типов, используемые с так называемой «типизацией по умолчанию» (подробности см. В enableDefaultTyping ()).

2 static class ObjectMapper.DefaultTyping

Перечисление, используемое с enableDefaultTyping (), чтобы указать, для каких типов (классов) следует использовать типизацию по умолчанию.

Поля

  • protected DeserializationConfig _deserializationConfig - Объект конфигурации, определяющий основные глобальные параметры процесса сериализации.

  • protected DefaultDeserializationContext _deserializationContext- объект контекста Blueprint; хранится здесь, чтобы разрешить настраиваемые подклассы.

  • protected InjectableValues _injectableValues - Поставщик значений для внедрения в десериализованные POJO.

  • protected JsonFactory _jsonFactory - Factory используется для создания экземпляров JsonParser и JsonGenerator по мере необходимости.

  • protected SimpleMixInResolver _mixIns - Сопоставление, которое определяет, как применять смешанные аннотации: ключ - это тип для получения дополнительных аннотаций, а значение - это тип, который имеет аннотации для «смешивания».

  • protected ConfigOverrides _propertyOverrides - В настоящее время активные переопределения конфигурации для каждого типа, доступ к которым осуществляется объявленным типом свойства.

  • protected Set<Object> _registeredModuleTypes - Набор типов модулей (согласно Module.getTypeId (), которые были зарегистрированы; отслеживается, если включен MapperFeature.IGNORE_DUPLICATE_MODULE_REGISTRATIONS, так что дублирующиеся вызовы регистрации можно игнорировать (чтобы избежать добавления одних и тех же обработчиков несколько раз, в большинстве случаев).

  • protected ConcurrentHashMap<JavaType,JsonDeserializer<Object>> _rootDeserializers - Мы будем использовать отдельную карту основного уровня для отслеживания десериализаторов корневого уровня.

  • protected SerializationConfig _serializationConfig - Объект конфигурации, определяющий основные глобальные параметры процесса сериализации.

  • protected SerializerFactory _serializerFactory - Фабрика сериализаторов, используемая для создания сериализаторов.

  • protected DefaultSerializerProvider _serializerProvider - Объект, который управляет доступом к сериализаторам, используемым для сериализации, включая кеширование.

  • protected SubtypeResolver _subtypeResolver - Вещь, используемая для регистрации подтипов, при необходимости преобразовывая их в супер / подтипы.

  • protected TypeFactory _typeFactory- Конкретная фабрика, используемая для создания экземпляров JavaType; необходимо, чтобы модули могли добавлять больше настраиваемой обработки типов (в основном для поддержки типов языков JVM, отличных от Java).

  • protected static AnnotationIntrospector DEFAULT_ANNOTATION_INTROSPECTOR

  • protected static BaseSettings DEFAULT_BASE - Базовые настройки содержат значения по умолчанию, используемые для всех экземпляров ObjectMapper.

  • protected static VisibilityChecker<?> STD_VISIBILITY_CHECKER

Конструкторы

S.No. Конструктор и описание
1 ObjectMapper()

Конструктор по умолчанию, который при необходимости создаст JsonFactory по умолчанию, использует SerializerProvider в качестве своего SerializerProvider и BeanSerializerFactory в качестве своего SerializerFactory.

2 ObjectMapper(JsonFactory jf)

Создает экземпляр, который использует указанный JsonFactory для создания необходимых JsonParsers и / или JsonGenerators.

3 ObjectMapper(JsonFactory jf, SerializerProvider sp, DeserializerProvider dp)

Создает экземпляр, который использует указанный JsonFactory для создания необходимых JsonParsers и / или JsonGenerators, и использует заданные поставщики для доступа к сериализаторам и десериализаторам.

4 protected ObjectMapper(ObjectMapper src)

Копирующий конструктор, в основном используется для поддержки copy ().

Методы

Переопределяемый вспомогательный метод, используемый для создания SerializerProvider, который будет использоваться для сериализации. void addMixInAnnotations (Class <?> target, Class <?> mixinSource) - устарело. Начиная с версии 2.5: заменен беглой формой метода; addMixIn (Класс, Класс). protected DefaultDeserializationContext createDeserializationContext (JsonParser p, DeserializationConfig cfg) - внутренний вспомогательный метод, вызываемый для создания экземпляра DeserializationContext для десериализации одного корневого значения. JsonSchema generateJsonSchema (Class <?> T) - не рекомендуется. Начиная с версии 2.6 используется внешний генератор схемы JSON (https://github.com/FasterXML/jackson-module-jsonSchema) (который под капотом вызывает acceptJsonFormatVisitor (JavaType, JsonFormatVisitorWrapper)) void registerSubtypes (Class <?> ... классы) - Метод для регистрации указанного класса в качестве подтипа, чтобы разрешение на основе имени типа могло связывать супертипы с подтипами (в качестве альтернативы использованию аннотаций). void setFilters (FilterProvider filterProvider) - не рекомендуется. Начиная с версии 2.6, вместо этого используйте setFilterProvider (com.fasterxml.jackson.databind.ser.FilterProvider) (разрешает цепочку) Factory метод для создания ObjectReader, который будет использовать указанные детали экранирования символов для вывода.
1 protected void _checkInvalidCopy(Class<?> exp)

2 protected void _configAndWriteValue(JsonGenerator g, Object value) - Метод, вызываемый для настройки генератора по мере необходимости, а затем вызова функции записи
3 protected Object _convert(Object fromValue, JavaType toValueType) - Фактическая реализация преобразования: вместо использования существующих методов чтения и записи большая часть кода встроена.
4 protected JsonDeserializer<Object> _findRootDeserializer(DeserializationContext ctxt, JavaType valueType) - Метод, вызываемый для поиска десериализатора для переданного значения корневого уровня.
5 protected JsonToken _initForReading(JsonParser p) - Метод вызывается, чтобы убедиться, что данный парсер готов к чтению содержимого для привязки данных.
6 protected ObjectReader _newReader(DeserializationConfig config) - Подклассы фабричных методов должны переопределить, чтобы создавать экземпляры ObjectReader соответствующего подтипа.
7 protected ObjectReader _newReader(DeserializationConfig config, JavaType valueType, Object valueToUpdate, FormatSchema schema, InjectableValues injectableValues) - Подклассы фабричных методов должны переопределить, чтобы создавать экземпляры ObjectReader соответствующего подтипа.
8 protected ObjectWriter _newWriter(SerializationConfig config) - Подклассы фабричных методов должны переопределить, чтобы создать экземпляры ObjectWriter надлежащего подтипа.
9 protected ObjectWriter _newWriter(SerializationConfig config, FormatSchema schema) - Подклассы фабричных методов должны переопределить, чтобы создать экземпляры ObjectWriter надлежащего подтипа.
10 protected ObjectWriter _newWriter(SerializationConfig config, JavaType rootType, PrettyPrinter pp) - Подклассы фабричных методов должны переопределить, чтобы создать экземпляры ObjectWriter надлежащего подтипа.
11 protected Object _readMapAndClose(JsonParser p0, JavaType valueType)
12 protected Object _readValue(DeserializationConfig cfg, JsonParser p, JavaType valueType) - Актуальная реализация операции чтения + привязки значения.
13 protected DefaultSerializerProvider _serializerProvider(SerializationConfig config)
14 protected Object _unwrapAndDeserialize(JsonParser p, DeserializationContext ctxt, DeserializationConfig config, JavaType rootType, JsonDeserializer<Object> deser)
15 protected void _verifySchemaType(FormatSchema schema)
16 void acceptJsonFormatVisitor(Class<?> type, JsonFormatVisitorWrapper visitor) - Метод посещения иерархии типов для данного типа с использованием указанного посетителя.
17 void acceptJsonFormatVisitor(JavaType type, JsonFormatVisitorWrapper visitor) - Метод посещения иерархии типов для данного типа с использованием указанного посетителя.
18 ObjectMapper addHandler(DeserializationProblemHandler h) - Метод добавления указанного DeserializationProblemHandler, который будет использоваться для обработки конкретных проблем во время десериализации.
19 ObjectMapper addMixIn(Class<?> target, Class<?> mixinSource) - Метод, используемый для добавления смешанных аннотаций, используемых для расширения указанного класса или интерфейса.
20 boolean canDeserialize(JavaType type) - Метод, который можно вызвать, чтобы проверить, думает ли картограф, что он может десериализовать объект заданного типа.
21 год boolean canDeserialize(JavaType type, AtomicReference<Throwable> cause) - Метод похож на canDeserialize (JavaType), но может возвращать фактический Throwable, который был сгенерирован при попытке создать сериализатор: это может быть полезно при выяснении реальной проблемы.
22 boolean canSerialize(Class<?> type) - Метод, который можно вызвать, чтобы проверить, думает ли картограф, что он может сериализовать экземпляр данного класса.
23 boolean canSerialize(Class<?> type, AtomicReference<Throwable> cause) - Метод похож на canSerialize (Class), но может возвращать фактический Throwable, который был сгенерирован при попытке создать сериализатор: это может быть полезно при выяснении реальной проблемы.
24 ObjectMapper clearProblemHandlers() - Метод удаления всех зарегистрированных экземпляров DeserializationProblemHandlers из этого сопоставителя.
25 MutableConfigOverride configOverride(Classlt;?> type) - Аксессор для получения изменяемого объекта переопределения конфигурации для данного типа, необходимого для добавления или изменения переопределений для каждого типа, применяемых к свойствам данного типа.
26 ObjectMapper configure(DeserializationFeature f, boolean state) - Метод изменения состояния функции включения / выключения десериализации для этого сопоставителя объектов.
27 ObjectMapper configure(JsonGenerator.Feature f, boolean state) - Метод изменения состояния включения / выключения функции JsonGenerator для экземпляров генератора, создаваемых этим сопоставителем объектов.
28 ObjectMapper configure(JsonParser.Feature f, boolean state) - Метод изменения состояния указанных JsonParser.Features для экземпляров парсера, создаваемых этим сопоставителем объектов.
29 ObjectMapper configure(MapperFeature f, boolean state) - Метод изменения состояния функции включения / выключения сопоставителя для этого экземпляра сопоставителя.
30 ObjectMapper configure(SerializationFeature f, boolean state) - Метод изменения состояния функции включения / выключения сериализации для этого сопоставителя объектов.
31 год JavaType constructType(Type t) - Удобный метод построения JavaType из заданного типа (обычно java.lang.Class), но без явного контекста.
32 <T> T convertValue(Object fromValue, Class<T> toValueType) - Удобный метод выполнения двухэтапного преобразования из заданного значения в экземпляр заданного типа значения, если (но только если!) Преобразование необходимо.
33 <T> T convertValue(Object fromValue, JavaType toValueType) - См. ConvertValue (Объект, Класс)
34 <T> T convertValue(Object fromValue, TypeReference<?> toValueTypeRef) - См. ConvertValue (Объект, Класс)
35 год ObjectMapper copy() - Метод создания нового экземпляра ObjectMapper, имеющего ту же начальную конфигурацию, что и этот экземпляр.
36 ArrayNode createArrayNode() - Примечание: тип возвращаемого значения является ковариантным, поскольку базовая абстракция ObjectCodec не может ссылаться на конкретные типы узлов (поскольку это часть основного пакета, тогда как impls - часть пакета mapper)
37 ObjectNode createObjectNode() - Примечание: тип возвращаемого значения является ковариантным, поскольку базовая абстракция ObjectCodec не может ссылаться на конкретные типы узлов (поскольку это часть основного пакета, тогда как impls - часть пакета mapper)
38 protected ClassIntrospector defaultClassIntrospector() - Переопределяемый вспомогательный метод, используемый для создания используемого ClassIntrospector по умолчанию.
39 ObjectMapper disable(DeserializationFeature feature) - Метод включения указанных функций DeserializationConfig.
40 ObjectMapper disable(DeserializationFeature first, DeserializationFeature... f) - Метод включения указанных функций DeserializationConfig.
41 год ObjectMapper disable(JsonGenerator.Feature... features) - Метод отключения указанного JsonGenerator.Features для экземпляров парсера, создаваемых этим сопоставителем объектов.
42 ObjectMapper disable(JsonParser.Feature... features) - Метод отключения указанных JsonParser.Features для экземпляров парсера, создаваемых этим сопоставителем объектов.
43 ObjectMapper disable(MapperFeature... f) - Метод включения указанных функций DeserializationConfig.
44 ObjectMapper disable(SerializationFeature f) - Метод включения указанных функций DeserializationConfig.
45 ObjectMapper disable(SerializationFeature first, SerializationFeature... f) - Метод включения указанных функций DeserializationConfig.
46 ObjectMapper disableDefaultTyping()- Метод отключения автоматического включения информации о типе; в этом случае только явно аннотированные типы (с JsonTypeInfo) будут иметь дополнительную информацию о встроенном типе.
47 ObjectMapper enable(DeserializationFeature feature) - Метод включения указанных функций DeserializationConfig.
48 ObjectMapper enable(DeserializationFeature first, DeserializationFeature... f) - Метод включения указанных функций DeserializationConfig.
49 ObjectMapper enable(JsonGenerator.Feature... features) - Метод включения указанного JsonGenerator.Features для экземпляров парсера, создаваемых этим сопоставителем объектов.
50 ObjectMapper enable(JsonParser.Feature... features) - Метод включения указанных свойств JsonParser.Features для экземпляров парсера, создаваемых этим сопоставителем объектов.
51 ObjectMapper enable(MapperFeature... f) - Метод включения указанных функций MapperConfig.
52 ObjectMapper enable(SerializationFeature f) - Метод включения указанной функции DeserializationConfig.
53 ObjectMapper enable(SerializationFeature first, SerializationFeature... f) - Метод включения указанных функций DeserializationConfig.
54 ObjectMapper enableDefaultTyping() - Удобный метод, эквивалентный вызову
55 ObjectMapper enableDefaultTyping(ObjectMapper.DefaultTyping dti) - Удобный метод, эквивалентный вызову
56 ObjectMapper enableDefaultTyping(ObjectMapper.DefaultTyping applicability, JsonTypeInfo.As includeAs) - Метод включения автоматического включения информации о типе, необходимой для правильной десериализации полиморфных типов (если типы не были аннотированы с помощью JsonTypeInfo).
57 ObjectMapper enableDefaultTypingAsProperty(ObjectMapper.DefaultTyping applicability, String propertyName) - Метод для включения автоматического включения информации о типе - необходим для правильной десериализации полиморфных типов (если типы не были аннотированы с помощью JsonTypeInfo) - с использованием механизма включения «As.PROPERTY» и указанного имени свойства для использования для включения (по умолчанию "@ class ", поскольку информация о типе по умолчанию всегда использует имя класса в качестве идентификатора типа)
58 ObjectMapper findAndRegisterModules() - Удобный метод, функционально эквивалентный: mapper.registerModules (mapper.findModules ());
59 Class<?> findMixInClassFor(Class<?> cls)
60 static List<Module> findModules() - Метод поиска доступных методов с использованием средства JDK ServiceLoader вместе с предоставляемым модулем SPI.
61 static List<Module> findModules(ClassLoader classLoader) - Метод поиска доступных методов с использованием средства JDK ServiceLoader вместе с предоставляемым модулем SPI.
62 DateFormat getDateFormat()
63 DeserializationConfig getDeserializationConfig() - Метод, который возвращает общий объект DeserializationConfig по умолчанию, который определяет параметры конфигурации для десериализации.
64 DeserializationContext getDeserializationContext() - Метод получения текущего контекста десериализации.
65 JsonFactory getFactory() - Метод, который можно использовать для получения JsonFactory, который использует этот сопоставитель, если ему нужно создать JsonParsers и / или JsonGenerators.
66 InjectableValues getInjectableValues()
67 JsonFactory getJsonFactory()- Устарело. Начиная с версии 2.1: используйте getFactory () вместо
68 JsonNodeFactory getNodeFactory() - Метод, который можно использовать для получения JsonNodeFactory, который этот преобразователь будет использовать при непосредственном создании корневых экземпляров JsonNode для деревьев.
69 PropertyNamingStrategy getPropertyNamingStrategy()
70 SerializationConfig getSerializationConfig() - Метод, который возвращает общий объект SerializationConfig по умолчанию, который определяет параметры конфигурации для сериализации.
71 SerializerFactory getSerializerFactory() - Метод получения текущего SerializerFactory.
72 SerializerProvider getSerializerProvider() - Аксессор для экземпляра «чертежа» (или фабрики), из которого создаются экземпляры путем вызова DefaultSerializerProvider.createInstance (com.fasterxml.jackson.databind.SerializationConfig, com.fasterxml.jackson.databind.ser.SerializerFactory).
73 SerializerProvider getSerializerProviderInstance() - Аксессор для создания и возврата экземпляра SerializerProvider, который может использоваться для доступа к сериализаторам.
74 SubtypeResolver getSubtypeResolver() - Метод доступа к используемому преобразователю подтипа.
75 TypeFactory getTypeFactory() - Аксессор для получения текущего настроенного экземпляра TypeFactory.
76 VisibilityChecker<?> getVisibilityChecker()- Метод доступа к текущему настроенному средству проверки видимости; объект, используемый для определения, может ли данный элемент свойства (метод, поле, конструктор) быть обнаружен автоматически или нет.
77 boolean isEnabled(DeserializationFeature f) - Метод проверки, включена ли данная особенность десериализации.
78 boolean isEnabled(JsonFactory.Feature f) - Метод удобства, эквивалентный:
79 boolean isEnabled(JsonGenerator.Feature f)
80 boolean isEnabled(JsonParser.Feature f)
81 год boolean isEnabled(MapperFeature f) - Метод проверки, включен ли данный MapperFeature.
82 boolean isEnabled(SerializationFeature f) - Метод проверки, включена ли данная особенность сериализации.
83 int mixInCount()
84 ObjectReader reader() - Заводской метод построения ObjectReader с настройками по умолчанию.
85 ObjectReader reader(Base64Variant defaultBase64) - Заводской метод создания ObjectReader, который будет использовать указанный вариант кодировки Base64 для двоичных данных в кодировке Base64.
86 ObjectReader reader(Class<?> type)- Устарело. Начиная с версии 2.5, используйте readerFor (Class) вместо
87 ObjectReader reader(ContextAttributes attrs) - Заводской метод для создания ObjectReader, который будет использовать указанные атрибуты по умолчанию.
88 ObjectReader reader(DeserializationFeature feature) - Заводской метод создания ObjectReader с включенной указанной функцией (по сравнению с настройками, которые имеет этот экземпляр сопоставителя).
89 ObjectReader reader(DeserializationFeature first, DeserializationFeature... other) - Заводской метод создания ObjectReader с включенными указанными функциями (по сравнению с настройками, которые имеет этот экземпляр сопоставителя).
90 ObjectReader reader(FormatSchema schema) - Заводской метод для создания ObjectReader, который будет передавать определенный объект схемы в JsonParser, используемый для чтения содержимого.
91 ObjectReader reader(InjectableValues injectableValues) - Заводской метод построения ObjectReader, который будет использовать указанные вводимые значения.
92 ObjectReader reader(JavaType type)- Устарело. Начиная с версии 2.5, используйте readerFor (JavaType) вместо
93 ObjectReader reader(JsonNodeFactory f) - Заводской метод построения ObjectReader, который будет использовать указанный JsonNodeFactory для построения деревьев JSON.
94 ObjectReader reader(TypeReference<?> type)- Устарело. Начиная с версии 2.5, используйте readerFor (TypeReference) вместо
95 ObjectReader readerFor(Class<?> type) - Заводской метод создания ObjectReader, который будет читать или обновлять экземпляры указанного типа
96 ObjectReader readerFor(JavaType type) - Заводской метод создания ObjectReader, который будет читать или обновлять экземпляры указанного типа
97 ObjectReader readerFor(TypeReference<?> type) - Заводской метод создания ObjectReader, который будет читать или обновлять экземпляры указанного типа
98 ObjectReader readerForUpdating(Object valueToUpdate) - Заводской метод для создания ObjectReader, который обновит данный объект (обычно Bean, но также может быть коллекцией или картой, но НЕ массивом) с данными JSON.
99 ObjectReader readerWithView(Class<?> view) - Заводской метод построения ObjectReader, который будет десериализовать объекты с использованием указанного JSON View (фильтра).
100 JsonNode readTree(byte[] content) - Метод десериализации содержимого JSON в виде дерева, выраженного с использованием набора экземпляров JsonNode.
101 JsonNode readTree(File file) - Метод десериализации содержимого JSON в виде дерева, выраженного с использованием набора экземпляров JsonNode.
102 JsonNode readTree(InputStream in) - Метод десериализации содержимого JSON в виде дерева, выраженного с использованием набора экземпляров JsonNode.
103 <T extends TreeNode> T readTree(JsonParser p) - Метод десериализации содержимого JSON в виде дерева, выраженного с использованием набора экземпляров JsonNode.
104 JsonNode readTree(Reader r) - Метод десериализации содержимого JSON в виде дерева, выраженного с использованием набора экземпляров JsonNode.
105 JsonNode readTree(String content) - Метод десериализации содержимого JSON в виде дерева, выраженного с использованием набора экземпляров JsonNode.
106 JsonNode readTree(URL source) - Метод десериализации содержимого JSON в виде дерева, выраженного с использованием набора экземпляров JsonNode.
107 <T> T readValue(byte[] src, Class<T> valueType)
108 <T> T readValue(byte[] src, int offset, int len, Class<T> valueType)
109 <T> T readValue(byte[] src, int offset, int len, JavaType valueType)
110 <T> T readValue(byte[] src, int offset, int len, TypeReference valueTypeRef)
111 <T> T readValue(byte[] src, JavaType valueType)
112 <T> T readValue(byte[] src, TypeReference valueTypeRef)
113 <T> T readValue(DataInput src, Class<T> valueType)
114 <T> T readValue(DataInput src, JavaType valueType)
115 <T> T readValue(File src, Class<T> valueType) - Метод десериализации содержимого JSON из данного файла в заданный тип Java.
116 <T> T readValue(File src, JavaType valueType) - Метод десериализации содержимого JSON из данного файла в заданный тип Java.
117 <T> T readValue(File src, TypeReference valueTypeRef) - Метод десериализации содержимого JSON из данного файла в заданный тип Java.
118 <T> T readValue(InputStream src, Class<T> valueType)
119 <T> T readValue(InputStream src, JavaType valueType)
120 <T> T readValue(InputStream src, TypeReference valueTypeRef)
121 <T> T readValue(JsonParser p, Class<T> valueType) - Method to deserialize JSON content into a non-container type (it can be an array type, however): typically a bean, array or a wrapper type (like Boolean).
122 <T> T readValue(JsonParser p, JavaType valueType) - Типобезопасный перегруженный метод, в основном псевдоним для readValue (JsonParser, Class).
123 <T> T readValue(JsonParser p, ResolvedType valueType) - Метод десериализации содержимого JSON в тип Java, ссылка на который передается в качестве аргумента.
124 <T> T readValue(JsonParser p, TypeReference<?> valueTypeRef) - Метод десериализации содержимого JSON в тип Java, ссылка на который передается в качестве аргумента.
125 <T> T readValue(Reader src, Class<T> valueType) -
1 <T> T readValue(Reader src, JavaType valueType)
126 <T> T readValue(Reader src, TypeReference valueTypeRef)
127 <T> T readValue(String content, Class<T> valueType) - Метод десериализации содержимого JSON из заданной строки содержимого JSON.
128 <T> T readValue(String content, JavaType valueType) - Метод десериализации содержимого JSON из заданной строки содержимого JSON.
129 <T> T readValue(String content, TypeReference valueTypeRef) - Метод десериализации содержимого JSON из заданной строки содержимого JSON.
130 <T> T readValue(URL src, Class<T> valueType) - Метод десериализации содержимого JSON из данного ресурса в заданный тип Java.
131 <T> T readValue(URL src, JavaType valueType)
132 <T> T readValue(URL src, TypeReference valueTypeRef) - Метод десериализации содержимого JSON из данного ресурса в заданный тип Java.
133 <T> MappingIterator<T> readValues(JsonParser p, Class<T> valueType) - Удобный метод, эквивалентный по функциям:
134 <T> MappingIterator<T> readValues(JsonParser p, JavaType valueType) - Удобный метод, эквивалентный по функциям:
135 <T> MappingIterator<T> readValues(JsonParser p, ResolvedType valueType) - Удобный метод, эквивалентный по функциям:
136 <T> MappingIterator<T> readValues(JsonParser p, TypeReference<?>valueTypeRef) - Метод чтения последовательности объектов из потока парсера.
137 ObjectMapper registerModule(Module module)- Метод регистрации модуля, который может расширять функциональность, предоставляемую этим картографом; например, добавляя поставщиков для настраиваемых сериализаторов и десериализаторов.
138 ObjectMapper registerModules(Iterable<Module> modules)- Удобный метод регистрации указанных модулей в заказе; функционально эквивалентен:
139 ObjectMapper registerModules(Module... modules)- Удобный метод регистрации указанных модулей в заказе; функционально эквивалентен:
140 void registerSubtypes(NamedType... types) - Метод регистрации указанного класса как подтипа, чтобы разрешение на основе имени типа могло связывать супертипы с подтипами (в качестве альтернативы использованию аннотаций).
141 ObjectMapper setAnnotationIntrospector(AnnotationIntrospector ai) - Метод настройки AnnotationIntrospector, используемого этим экземпляром сопоставителя как для сериализации, так и для десериализации.
142 ObjectMapper setAnnotationIntrospectors(AnnotationIntrospector serializerAI, AnnotationIntrospector deserializerAI) - Метод изменения экземпляров AnnotationIntrospector, используемых этим экземпляром сопоставителя для сериализации и десериализации, указав их по отдельности, чтобы для разных аспектов можно было использовать различную интроспекцию.
143 ObjectMapper setBase64Variant(Base64Variant v) - Метод, который настроит Base64Variant по умолчанию, который будут использовать сериализаторы и десериализаторы byte [].
144 ObjectMapper setConfig(DeserializationConfig config) - Метод, позволяющий переопределить базовый объект DeserializationConfig.
145 ObjectMapper setConfig(SerializationConfig config) - Метод, позволяющий переопределить базовый объект SerializationConfig, который содержит параметры конфигурации, специфичные для сериализации.
146 ObjectMapper setDateFormat(DateFormat dateFormat) - Метод настройки DateFormat по умолчанию для использования при сериализации значений времени в виде строк и десериализации из строк JSON.
147 ObjectMapper setDefaultPrettyPrinter(PrettyPrinter pp) - Метод указания PrettyPrinter, который будет использоваться, когда включена "красивая печать по умолчанию" (путем включения SerializationFeature.INDENT_OUTPUT)
148 ObjectMapper setDefaultTyping(TypeResolverBuilder<?> typer) - Метод включения автоматического включения информации о типе с использованием указанного объекта-обработчика для определения того, на какие типы это влияет, а также подробностей о том, как внедряется информация.
149 ObjectMapper setFilterProvider(FilterProvider filterProvider) - Метод настройки этого сопоставителя для использования указанного FilterProvider для сопоставления идентификаторов фильтров с фактическими экземплярами фильтров.
150 Object setHandlerInstantiator(HandlerInstantiator hi) - Метод настройки HandlerInstantiator для использования для создания экземпляров обработчиков (таких как сериализаторы, десериализаторы, преобразователи типов и идентификаторов типов) с учетом класса.
151 ObjectMapper setInjectableValues(InjectableValues injectableValues) - Метод настройки InjectableValues, который используется для поиска значений для инъекции.
152 ObjectMapper setLocale(Locale l) - Метод переопределения локали по умолчанию для использования при форматировании.
153 void setMixInAnnotations(Map<Class<?>,Class<?>> sourceMixins)- Устарело. Начиная с версии 2.5: заменен беглой формой метода; setMixIns (java.util.Map <java.lang.Class <?>, java.lang.Class <? >>).
154 ObjectMapper setMixInResolver(ClassIntrospector.MixInResolver resolver) - Метод, который может быть вызван, чтобы указать данный преобразователь для определения местоположения смешанных классов для использования, переопределяя напрямую добавленные сопоставления.
155 ObjectMapper setMixIns(Map<Class<?>,Class<?>> sourceMixins) - Метод, используемый для определения смешанных аннотаций для использования для дополнения аннотаций, которые есть у обрабатываемых (сериализуемых / десериализуемых) классов.
156 ObjectMapper setNodeFactory(JsonNodeFactory f) - Метод указания JsonNodeFactory для использования для построения узлов дерева корневого уровня (с помощью метода createObjectNode ()
157 ObjectMapper setPropertyInclusion(JsonInclude.Value incl) - Метод установки стратегии включения свойств POJO по умолчанию для сериализации.
158 ObjectMapper setPropertyNamingStrategy(PropertyNamingStrategy s) - Метод установки стратегии именования пользовательских свойств.
159 ObjectMapper setSerializationInclusion(JsonInclude.Include incl) - Удобный метод, эквивалентный вызову:
160 ObjectMapper setSerializerFactory(SerializerFactory f) - Метод настройки конкретного SerializerFactory, который будет использоваться для создания (bean) сериализаторов.
161 ObjectMapper setSerializerProvider(DefaultSerializerProvider p) - Метод установки экземпляра "blueprint" SerializerProvider для использования в качестве основы для фактических экземпляров поставщика, используемых для обработки кэширования экземпляров JsonSerializer.
162 ObjectMapper setSubtypeResolver(SubtypeResolver str) - Метод настройки использования настраиваемого преобразователя подтипа.
163 ObjectMapper setTimeZone(TimeZone tz) - Метод переопределения часового пояса по умолчанию для использования при форматировании.
164 ObjectMapper setTypeFactory(TypeFactory f) - Метод, который можно использовать для переопределения экземпляра TypeFactory, используемого этим преобразователем.
165 ObjectMapper setVisibility(PropertyAccessor forMethod, JsonAutoDetect.Visibility visibility) - Удобный метод, который позволяет изменять конфигурацию базовых VisibilityCheckers, чтобы изменить детали того, какие типы свойств обнаруживаются автоматически.
166 ObjectMapper setVisibility(VisibilityChecker<?> vc) - Метод для настройки текущего настроенного VisibilityChecker, объекта, используемого для определения, может ли данный элемент свойства (метод, поле, конструктор) быть автоматически обнаружен или нет.
167 void setVisibilityChecker(VisibilityChecker<?> vc)- Устарело. Начиная с версии 2.6 вместо этого используйте setVisibility (VisibilityChecker).
168 JsonParser treeAsTokens(TreeNode n) - Метод построения JsonParser из представления дерева JSON.
169 <T> T treeToValue(TreeNode n, Class<T> valueType) - Удобный метод преобразования, который привяжет данные, содержащиеся в дереве JSON, к определенному типу значения (обычно bean).
170 <T extends JsonNode> T valueToTree(Object fromValue)- Инверсия treeToValue (com.fasterxml.jackson.core.TreeNode, java.lang.Class <T>); учитывая значение (обычно bean), будет построено эквивалентное представление дерева JSON.
171 Version version() - Метод, который будет возвращать информацию о версии, хранящуюся и считываемую из jar-файла, содержащего этот класс.
172 ObjectWriter writer() - Удобный метод построения ObjectWriter с настройками по умолчанию.
173 ObjectWriter writer(Base64Variant defaultBase64) - Заводской метод создания ObjectWriter, который будет использовать указанный вариант кодировки Base64 для двоичных данных в кодировке Base64.
174 ObjectWriter writer(CharacterEscapes escapes) -
175 ObjectWriter writer(ContextAttributes attrs) - Заводской метод для создания ObjectWriter, который будет использовать указанные атрибуты по умолчанию.
176 ObjectWriter writer(DateFormat df)- Заводской метод построения ObjectWriter, который будет сериализовать объекты с использованием указанного DateFormat; или, если передано значение null, с использованием отметки времени (64-битное число.
177 ObjectWriter writer(FilterProvider filterProvider) - Заводской метод для создания ObjectWriter, который будет сериализовать объекты с использованием указанного поставщика фильтров.
178 ObjectWriter writer(FormatSchema schema) - Заводской метод для создания ObjectWriter, который будет передавать определенный объект схемы в JsonGenerator, используемый для записи контента.
179 ObjectWriter writer(PrettyPrinter pp) - Заводской метод для создания ObjectWriter, который будет сериализовать объекты, используя указанный симпатичный принтер для отступов (или, если null, нет красивого принтера)
180 ObjectWriter writer(SerializationFeature feature) - Заводской метод для создания ObjectWriter с включенной указанной функцией (по сравнению с настройками, которые имеет этот экземпляр сопоставителя).
181 ObjectWriter writer(SerializationFeature first, SerializationFeature... other) - Заводской метод создания ObjectWriter с включенными указанными функциями (по сравнению с настройками, которые имеет этот экземпляр сопоставителя).
182 ObjectWriter writerFor(Class<?> rootType) - Заводской метод для создания ObjectWriter, который будет сериализовать объекты с использованием указанного корневого типа вместо фактического типа значения во время выполнения.
183 ObjectWriter writerFor(JavaType rootType) - Заводской метод для создания ObjectWriter, который будет сериализовать объекты с использованием указанного корневого типа вместо фактического типа значения во время выполнения.
184 ObjectWriter writerFor(TypeReference<?> rootType) - Заводской метод для создания ObjectWriter, который будет сериализовать объекты с использованием указанного корневого типа вместо фактического типа значения во время выполнения.
185 ObjectWriter writerWithDefaultPrettyPrinter() - Заводской метод для создания ObjectWriter, который будет сериализовать объекты, используя красивый принтер по умолчанию для отступов.
186 ObjectWriter writerWithType(Class<?> rootType)- Устарело. Начиная с версии 2.5, используйте вместо этого writerFor (Class).
187 ObjectWriter writerWithType(JavaType rootType)- Устарело. Начиная с версии 2.5, используйте вместо этого writerFor (JavaType).
188 ObjectWriter writerWithType(TypeReference<?> rootType)- Устарело. Начиная с версии 2.5, используйте вместо этого writerFor (TypeReference).
189 ObjectWriter writerWithView(Class<?> serializationView) - Заводской метод для создания ObjectWriter, который будет сериализовать объекты с использованием указанного JSON View (фильтра).
190 void writeTree(JsonGenerator jgen, JsonNode rootNode) - Метод сериализации данного дерева JSON с использованием предоставленного генератора.
191 void writeTree(JsonGenerator jgen, TreeNode rootNode)
192 void writeValue(DataOutput out, Object value)
193 void writeValue(File resultFile, Object value) - Метод, который можно использовать для сериализации любого значения Java в виде вывода JSON, записанного в предоставленный файл.
194 void writeValue(JsonGenerator g, Object value) - Метод, который можно использовать для сериализации любого значения Java в виде вывода JSON с использованием предоставленного JsonGenerator.
195 void writeValue(OutputStream out, Object value) - Метод, который можно использовать для сериализации любого значения Java в виде вывода JSON с использованием предоставленного потока вывода (с использованием кодировки JsonEncoding.UTF8).
196 void writeValue(Writer w, Object value) - Метод, который можно использовать для сериализации любого значения Java в виде вывода JSON с использованием предоставленного Writer.
197 byte[] writeValueAsBytes(Object value) - Метод, который можно использовать для сериализации любого значения Java в виде байтового массива.
198 String writeValueAsString(Object value) - Метод, который можно использовать для сериализации любого значения Java в виде строки.

Методы унаследованные

Этот класс наследует методы от следующих классов:

  • java.lang.Object

ObjectMapper Пример

Создайте следующую программу Java, используя любой редактор по вашему выбору, скажем C:/> Jackson_WORKSPACE

Файл: JacksonTester.java

import java.io.IOException;

import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class JacksonTester {
   public static void main(String args[]){
   
      ObjectMapper mapper = new ObjectMapper();
      String jsonString = "{\"name\":\"Mahesh\", \"age\":21}";
      
      //map json to student
      try{
         Student student = mapper.readValue(jsonString, Student.class);
         
         System.out.println(student);
         
         jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(student);
         
         System.out.println(jsonString);
      }
      catch (JsonParseException e) { e.printStackTrace();}
      catch (JsonMappingException e) { e.printStackTrace(); }
      catch (IOException e) { e.printStackTrace(); }
   }
}

class Student {
   private String name;
   private int age;
   public Student(){}
   public String getName() {
      return name;
   }
   public void setName(String name) {
      this.name = name;
   }
   public int getAge() {
      return age;
   }
   public void setAge(int age) {
      this.age = age;
   }
   public String toString(){
      return "Student [ name: "+name+", age: "+ age+ " ]";
   }
}

Verify the result

Скомпилируйте классы, используя javac компилятор следующим образом:

C:\Jackson_WORKSPACE>javac JacksonTester.java

Теперь запустите jacksonTester, чтобы увидеть результат:

C:\Jackson_WORKSPACE>java JacksonTester

Проверьте вывод

Student [ name: Mahesh, age: 21 ]
{
  "name" : "Mahesh",
  "age" : 21
}