Jackson - Lớp ObjectMapper

Giới thiệu

ObjectMapper là lớp diễn viên chính của thư viện Jackson. Lớp ObjectMapper ObjectMapper cung cấp chức năng đọc và ghi JSON, đến và đi từ POJO cơ bản (Đối tượng Java cũ thuần túy) hoặc đến và từ Mô hình cây JSON có mục đích chung (JsonNode), cũng như chức năng liên quan để thực hiện chuyển đổi. Nó cũng có thể tùy chỉnh cao để làm việc với các kiểu nội dung JSON khác nhau và hỗ trợ các khái niệm Đối tượng nâng cao hơn như tính đa hình và nhận dạng Đối tượng. ObjectMapper cũng hoạt động như một nhà máy cho các lớp ObjectReader và ObjectWriter nâng cao hơn.

Khai báo lớp học

Sau đây là khai báo cho com.fasterxml.jackson.databind.ObjectMapper lớp học -

public class ObjectMapper
   extends ObjectCodec
      implements Versioned, Serializable

Lớp học lồng nhau

Không. Lớp & Mô tả
1 static class ObjectMapper.DefaultTypeResolverBuilder

TypeResolverBuilder được tùy chỉnh cung cấp trình tạo trình phân giải kiểu được sử dụng với cái gọi là "kiểu nhập mặc định" (xem enableDefaultTyping () để biết chi tiết).

2 static class ObjectMapper.DefaultTyping

Phép liệt kê được sử dụng với enableDefaultTyping () để chỉ định loại (lớp) nhập mặc định nào nên được sử dụng.

Lĩnh vực

  • protected DeserializationConfig _deserializationConfig - Đối tượng cấu hình xác định cài đặt chung cơ bản cho quá trình tuần tự hóa.

  • protected DefaultDeserializationContext _deserializationContext- Đối tượng bối cảnh Blueprint; được lưu trữ ở đây để cho phép các lớp con tùy chỉnh.

  • protected InjectableValues _injectableValues - Nhà cung cấp các giá trị để đưa vào các POJO được giải nhiệt.

  • protected JsonFactory _jsonFactory - Factory được sử dụng để tạo các thể hiện JsonParser và JsonGenerator khi cần thiết.

  • protected SimpleMixInResolver _mixIns - Ánh xạ xác định cách áp dụng chú thích kết hợp: key là loại nhận được các chú thích bổ sung và giá trị là loại có chú thích để "kết hợp".

  • protected ConfigOverrides _propertyOverrides - Hiện đang hoạt động ghi đè cấu hình cho mỗi loại, được truy cập bởi loại thuộc tính đã khai báo.

  • protected Set<Object> _registeredModuleTypes - Tập hợp các loại mô-đun (theo Module.getTypeId () đã được đăng ký; theo dõi iff MapperFeature.IGNORE_DUPLICATE_MODULE_REGISTRATIONS được bật để có thể bỏ qua các lệnh gọi đăng ký trùng lặp (chủ yếu là để tránh thêm cùng một trình xử lý nhiều lần).

  • protected ConcurrentHashMap<JavaType,JsonDeserializer<Object>> _rootDeserializers - Chúng tôi sẽ sử dụng một Bản đồ cấp chính riêng biệt để theo dõi các bộ giải không khí cấp gốc.

  • protected SerializationConfig _serializationConfig - Đối tượng cấu hình xác định cài đặt chung cơ bản cho quá trình tuần tự hóa.

  • protected SerializerFactory _serializerFactory - Nhà máy sản xuất bộ nối tiếp dùng để chế tạo bộ nối tiếp.

  • protected DefaultSerializerProvider _serializerProvider - Đối tượng quản lý quyền truy cập vào các trình tuần tự hóa được sử dụng để tuần tự hóa, bao gồm cả bộ nhớ đệm.

  • protected SubtypeResolver _subtypeResolver - Điều được sử dụng để đăng ký kiểu con, giải quyết chúng thành kiểu siêu / con khi cần thiết.

  • protected TypeFactory _typeFactory- Nhà máy cụ thể được sử dụng để tạo các phiên bản JavaType; cần thiết để cho phép các mô-đun thêm nhiều xử lý kiểu tùy chỉnh hơn (hầu hết là để hỗ trợ các loại ngôn ngữ JVM không phải Java).

  • protected static AnnotationIntrospector DEFAULT_ANNOTATION_INTROSPECTOR

  • protected static BaseSettings DEFAULT_BASE - Cài đặt cơ sở chứa các giá trị mặc định được sử dụng cho tất cả các phiên bản ObjectMapper.

  • protected static VisibilityChecker<?> STD_VISIBILITY_CHECKER

Người xây dựng

Không. Cấu tạo & Mô tả
1 ObjectMapper()

Hàm tạo mặc định, sẽ xây dựng JsonFactory mặc định khi cần thiết, sử dụng SerializerProvider làm SerializerProvider và BeanSerializerFactory làm SerializerFactory.

2 ObjectMapper(JsonFactory jf)

Tạo phiên bản sử dụng JsonFactory được chỉ định để xây dựng các JsonParsers và / hoặc JsonGenerator cần thiết.

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

Phiên bản cấu trúc sử dụng JsonFactory được chỉ định để xây dựng các JsonParsers và / hoặc JsonGenerators cần thiết, đồng thời sử dụng các nhà cung cấp đã cho để truy cập trình tuần tự và trình giải mã.

4 protected ObjectMapper(ObjectMapper src)

Copy-constructor, hầu hết được sử dụng để hỗ trợ copy ().

Phương pháp

Phương thức trình trợ giúp có thể ghi đè được sử dụng để xây dựng SerializerProvider để sử dụng cho tuần tự hóa. void addMixInAnnotations (Class <?> target, Class <?> mixinSource) - Không được dùng nữa. Kể từ 2,5: được thay thế bằng một hình thức lưu loát của phương pháp; addMixIn (Lớp, Lớp). được bảo vệ DefaultDeserializationContext createDeserializationContext (JsonParser p, DeserializationConfig cfg) - Phương thức trợ giúp nội bộ được gọi để tạo một phiên bản của DeserializationContext để giải mã hóa một giá trị gốc duy nhất. JsonSchema createJsonSchema (Lớp <?> T) - Không được dùng nữa. Kể từ 2.6 sử dụng trình tạo lược đồ JSON bên ngoài (https://github.com/FasterXML/jackson-module-jsonSchema) (ẩn bên trong gọi các lớp acceptJsonFormatVisitor (JavaType, JsonFormatVisitorWrapper)) void registerSubtypes (Class <?> ... các lớp) - Phương thức đăng ký lớp được chỉ định làm kiểu con, để phân giải dựa trên tên kiểu có thể liên kết siêu kiểu với kiểu con (thay thế cho việc sử dụng chú thích). void setFilters (FilterProvider filterProvider) - Không được dùng nữa. Kể từ 2.6, hãy sử dụng setFilterProvider (com.fasterxml.jackson.databind.ser.FilterProvider) thay thế (cho phép chuỗi) phương thức Factory để xây dựng ObjectReader sẽ sử dụng các chi tiết thoát ký tự được chỉ định cho đầu ra.
1 protected void _checkInvalidCopy(Class<?> exp)

2 protected void _configAndWriteValue(JsonGenerator g, Object value) - Phương thức được gọi để cấu hình trình tạo khi cần thiết và sau đó gọi chức năng ghi
3 protected Object _convert(Object fromValue, JavaType toValueType) - Thực hiện chuyển đổi thực tế: thay vì sử dụng các phương pháp đọc và ghi hiện có, phần lớn mã được nội tuyến.
4 protected JsonDeserializer<Object> _findRootDeserializer(DeserializationContext ctxt, JavaType valueType) - Phương thức được gọi để xác định vị trí deserializer cho giá trị cấp gốc đã truyền.
5 protected JsonToken _initForReading(JsonParser p) - Phương thức được gọi để đảm bảo rằng trình phân tích cú pháp đã cho sẵn sàng để đọc nội dung để ràng buộc dữ liệu.
6 protected ObjectReader _newReader(DeserializationConfig config) - Các lớp con của phương thức gốc phải ghi đè, để tạo ra các phiên bản ObjectReader của kiểu con thích hợp
7 protected ObjectReader _newReader(DeserializationConfig config, JavaType valueType, Object valueToUpdate, FormatSchema schema, InjectableValues injectableValues) - Các lớp con của phương thức gốc phải ghi đè, để tạo ra các phiên bản ObjectReader của kiểu con thích hợp
số 8 protected ObjectWriter _newWriter(SerializationConfig config) - Các lớp con của phương thức gốc phải ghi đè, để tạo ra các phiên bản ObjectWriter của kiểu con thích hợp
9 protected ObjectWriter _newWriter(SerializationConfig config, FormatSchema schema) - Các lớp con của phương thức gốc phải ghi đè, để tạo ra các phiên bản ObjectWriter của kiểu con thích hợp
10 protected ObjectWriter _newWriter(SerializationConfig config, JavaType rootType, PrettyPrinter pp) - Các lớp con của phương thức Factory phải ghi đè, để tạo ra các thể hiện ObjectWriter của kiểu con thích hợp.
11 protected Object _readMapAndClose(JsonParser p0, JavaType valueType)
12 protected Object _readValue(DeserializationConfig cfg, JsonParser p, JavaType valueType) - Thực hiện thao tác đọc giá trị + ràng buộc thực tế.
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) - Phương pháp phân cấp loại truy cập cho loại đã cho, sử dụng khách truy cập được chỉ định.
17 void acceptJsonFormatVisitor(JavaType type, JsonFormatVisitorWrapper visitor) - Phương pháp phân cấp loại truy cập cho loại đã cho, sử dụng khách truy cập được chỉ định.
18 ObjectMapper addHandler(DeserializationProblemHandler h) - Phương pháp thêm DeserializationProblemHandler được chỉ định được sử dụng để xử lý các sự cố cụ thể trong quá trình giải mã.
19 ObjectMapper addMixIn(Class<?> target, Class<?> mixinSource) - Phương pháp sử dụng để thêm các chú thích kết hợp để sử dụng để tăng cường lớp hoặc giao diện được chỉ định.
20 boolean canDeserialize(JavaType type) - Phương thức có thể được gọi để kiểm tra xem liệu người lập bản đồ có nghĩ rằng nó có thể giải mã hóa một Đối tượng thuộc loại đã cho hay không.
21 boolean canDeserialize(JavaType type, AtomicReference<Throwable> cause) - Phương thức tương tự như canDeserialize (JavaType) nhưng có thể trả về Throwable thực tế đã được ném khi cố gắng xây dựng bộ tuần tự hóa: điều này có thể hữu ích trong việc tìm ra vấn đề thực tế là gì.
22 boolean canSerialize(Class<?> type) - Phương thức có thể được gọi để kiểm tra xem liệu người lập bản đồ có nghĩ rằng nó có thể tuần tự hóa một thể hiện của Lớp đã cho hay không.
23 boolean canSerialize(Class<?> type, AtomicReference<Throwable> cause) - Phương thức tương tự như canSerialize (Class) nhưng có thể trả về Throwable thực tế đã được ném khi cố gắng xây dựng bộ tuần tự: điều này có thể hữu ích trong việc tìm ra vấn đề thực tế là gì.
24 ObjectMapper clearProblemHandlers() - Phương pháp xóa tất cả các phiên bản DeserializationProblemHandlers đã đăng ký khỏi trình liên kết này.
25 MutableConfigOverride configOverride(Classlt;?> type) - Accessor để nhận đối tượng ghi đè cấu hình có thể thay đổi cho loại nhất định, cần thiết để thêm hoặc thay đổi ghi đè từng loại áp dụng cho các thuộc tính của loại đã cho.
26 ObjectMapper configure(DeserializationFeature f, boolean state) - Phương pháp thay đổi trạng thái bật / tắt tính năng deserialization cho trình ánh xạ đối tượng này.
27 ObjectMapper configure(JsonGenerator.Feature f, boolean state) - Phương pháp thay đổi trạng thái của tính năng JsonGenerator bật / tắt cho các thể hiện của trình tạo đối tượng mà trình ánh xạ đối tượng này tạo ra.
28 ObjectMapper configure(JsonParser.Feature f, boolean state) - Phương thức thay đổi trạng thái của JsonParser.Features được chỉ định cho các cá thể phân tích cú pháp mà trình ánh xạ đối tượng này tạo ra.
29 ObjectMapper configure(MapperFeature f, boolean state) - Phương pháp thay đổi trạng thái của một tính năng ánh xạ bật / tắt cho phiên bản ánh xạ này.
30 ObjectMapper configure(SerializationFeature f, boolean state) - Phương pháp thay đổi trạng thái của tính năng tuần tự hóa bật / tắt cho trình ánh xạ đối tượng này.
31 JavaType constructType(Type t) - Phương thức thuận tiện để xây dựng JavaType ngoài kiểu đã cho (thường là java.lang.Class), nhưng không có ngữ cảnh rõ ràng.
32 <T> T convertValue(Object fromValue, Class<T> toValueType) - Phương pháp thuận tiện để thực hiện chuyển đổi hai bước từ giá trị đã cho, sang trường hợp của loại giá trị đã cho, nếu (nhưng chỉ khi!) Cần chuyển đổi.
33 <T> T convertValue(Object fromValue, JavaType toValueType) - Xem convertValue (Đối tượng, Lớp)
34 <T> T convertValue(Object fromValue, TypeReference<?> toValueTypeRef) - Xem convertValue (Đối tượng, Lớp)
35 ObjectMapper copy() - Phương pháp tạo một thể hiện ObjectMapper mới có cấu hình ban đầu giống như thể hiện này.
36 ArrayNode createArrayNode() - Lưu ý: kiểu trả về là đồng biến thể, vì sự trừu tượng hóa ObjectCodec cơ bản không thể tham chiếu đến các kiểu nút cụ thể (vì nó là một phần của gói lõi, trong khi impls là một phần của gói bản đồ)
37 ObjectNode createObjectNode() - Lưu ý: kiểu trả về là đồng biến thể, vì sự trừu tượng hóa ObjectCodec cơ bản không thể tham chiếu đến các kiểu nút cụ thể (vì nó là một phần của gói lõi, trong khi impls là một phần của gói bản đồ)
38 protected ClassIntrospector defaultClassIntrospector() - Phương thức trợ giúp có thể ghi đè được sử dụng để tạo ClassIntros Inspector mặc định để sử dụng.
39 ObjectMapper disable(DeserializationFeature feature) - Phương pháp cho phép các tính năng DeserializationConfig được chỉ định.
40 ObjectMapper disable(DeserializationFeature first, DeserializationFeature... f) - Phương pháp cho phép các tính năng DeserializationConfig được chỉ định.
41 ObjectMapper disable(JsonGenerator.Feature... features) - Phương thức để vô hiệu hóa JsonGenerator.Features được chỉ định cho các phiên bản phân tích cú pháp mà trình ánh xạ đối tượng này tạo ra.
42 ObjectMapper disable(JsonParser.Feature... features) - Phương thức để vô hiệu hóa JsonParser.Features được chỉ định cho các cá thể phân tích cú pháp mà trình ánh xạ đối tượng này tạo ra.
43 ObjectMapper disable(MapperFeature... f) - Phương pháp cho phép các tính năng DeserializationConfig được chỉ định.
44 ObjectMapper disable(SerializationFeature f) - Phương pháp cho phép các tính năng DeserializationConfig được chỉ định.
45 ObjectMapper disable(SerializationFeature first, SerializationFeature... f) - Phương pháp cho phép các tính năng DeserializationConfig được chỉ định.
46 ObjectMapper disableDefaultTyping()- Phương pháp tắt tính năng tự động đưa thông tin loại; nếu vậy, chỉ những kiểu được chú thích rõ ràng (những kiểu có JsonTypeInfo) mới có thêm thông tin về kiểu nhúng.
47 ObjectMapper enable(DeserializationFeature feature) - Phương pháp cho phép các tính năng DeserializationConfig được chỉ định.
48 ObjectMapper enable(DeserializationFeature first, DeserializationFeature... f) - Phương pháp cho phép các tính năng DeserializationConfig được chỉ định.
49 ObjectMapper enable(JsonGenerator.Feature... features) - Phương thức cho phép JsonGenerator.Features được chỉ định cho các cá thể phân tích cú pháp mà trình ánh xạ đối tượng này tạo ra.
50 ObjectMapper enable(JsonParser.Feature... features) - Phương thức cho phép JsonParser.Features được chỉ định cho các cá thể phân tích cú pháp mà trình ánh xạ đối tượng này tạo ra.
51 ObjectMapper enable(MapperFeature... f) - Phương pháp cho phép các tính năng MapperConfig được chỉ định.
52 ObjectMapper enable(SerializationFeature f) - Phương pháp kích hoạt tính năng DeserializationConfig được chỉ định.
53 ObjectMapper enable(SerializationFeature first, SerializationFeature... f) - Phương pháp cho phép các tính năng DeserializationConfig được chỉ định.
54 ObjectMapper enableDefaultTyping() - Phương thức tiện lợi tương đương với gọi điện
55 ObjectMapper enableDefaultTyping(ObjectMapper.DefaultTyping dti) - Phương thức tiện lợi tương đương với gọi điện
56 ObjectMapper enableDefaultTyping(ObjectMapper.DefaultTyping applicability, JsonTypeInfo.As includeAs) - Phương pháp cho phép tự động bao gồm thông tin kiểu, cần thiết cho việc giải mã thích hợp các kiểu đa hình (trừ khi các kiểu đã được chú thích bằng JsonTypeInfo).
57 ObjectMapper enableDefaultTypingAsProperty(ObjectMapper.DefaultTyping applicability, String propertyName) - Phương pháp cho phép tự động bao gồm thông tin loại - cần thiết để giải mã thích hợp các loại đa hình (trừ khi các loại đã được chú thích bằng JsonTypeInfo) - sử dụng cơ chế bao gồm "As.PROPERTY" và tên thuộc tính được chỉ định để sử dụng cho bao gồm (mặc định là "@ lớp "vì thông tin kiểu mặc định luôn sử dụng tên lớp làm định danh kiểu)
58 ObjectMapper findAndRegisterModules() - Phương thức tiện lợi có chức năng tương đương với: mapper.registerModules (mapper.findModules ());
59 Class<?> findMixInClassFor(Class<?> cls)
60 static List<Module> findModules() - Phương pháp định vị các phương thức có sẵn, sử dụng cơ sở JDK ServiceLoader, cùng với SPI do mô-đun cung cấp.
61 static List<Module> findModules(ClassLoader classLoader) - Phương pháp định vị các phương thức có sẵn, sử dụng cơ sở JDK ServiceLoader, cùng với SPI do mô-đun cung cấp.
62 DateFormat getDateFormat()
63 DeserializationConfig getDeserializationConfig() - Phương thức trả về đối tượng DeserializationConfig mặc định được chia sẻ xác định cài đặt cấu hình cho quá trình deserialization.
64 DeserializationContext getDeserializationContext() - Phương thức lấy DeserializationContext hiện tại.
65 JsonFactory getFactory() - Phương thức có thể được sử dụng để nắm giữ JsonFactory mà trình ánh xạ này sử dụng nếu nó cần tạo JsonParsers và / hoặc JsonGenerator.
66 InjectableValues getInjectableValues()
67 JsonFactory getJsonFactory()- Không được dùng nữa. Kể từ 2.1: Sử dụng getFactory () thay thế
68 JsonNodeFactory getNodeFactory() - Phương thức có thể được sử dụng để nắm giữ JsonNodeFactory mà trình ánh xạ này sẽ sử dụng khi trực tiếp xây dựng các cá thể JsonNode gốc cho Cây.
69 PropertyNamingStrategy getPropertyNamingStrategy()
70 SerializationConfig getSerializationConfig() - Phương thức trả về đối tượng SerializationConfig mặc định được chia sẻ xác định cài đặt cấu hình cho tuần tự hóa.
71 SerializerFactory getSerializerFactory() - Phương pháp nhận SerializerFactory hiện tại.
72 SerializerProvider getSerializerProvider() - Accessor cho thể hiện "blueprint" (hoặc, factory), từ đó các thể hiện được tạo bằng cách gọi DefaultSerializerProvider.createInstance (com.fasterxml.jackson.databind.SerializationConfig, com.fasterxml.jackson.databind.ser.SerializerFactory).
73 SerializerProvider getSerializerProviderInstance() - Accessor để xây dựng và trả về một phiên bản SerializerProvider có thể được sử dụng để truy cập serializers.
74 SubtypeResolver getSubtypeResolver() - Phương pháp truy cập trình phân giải kiểu con đang được sử dụng.
75 TypeFactory getTypeFactory() - Accessor để nhận được phiên bản TypeFactory hiện được cấu hình.
76 VisibilityChecker<?> getVisibilityChecker()- Phương pháp truy cập trình kiểm tra khả năng hiển thị được cấu hình hiện tại; đối tượng được sử dụng để xác định xem phần tử thuộc tính đã cho (phương thức, trường, hàm tạo) có thể được tự động phát hiện hay không.
77 boolean isEnabled(DeserializationFeature f) - Phương pháp để kiểm tra xem đã bật tính năng cụ thể hóa giải không.
78 boolean isEnabled(JsonFactory.Feature f) - Phương pháp tiện lợi, tương đương với:
79 boolean isEnabled(JsonGenerator.Feature f)
80 boolean isEnabled(JsonParser.Feature f)
81 boolean isEnabled(MapperFeature f) - Phương pháp kiểm tra xem MapperFeature đã cho có được kích hoạt hay không.
82 boolean isEnabled(SerializationFeature f) - Phương pháp để kiểm tra xem tính năng cụ thể về tuần tự hóa đã cho có được bật hay không.
83 int mixInCount()
84 ObjectReader reader() - Phương thức ban đầu để xây dựng ObjectReader với cài đặt mặc định.
85 ObjectReader reader(Base64Variant defaultBase64) - Phương pháp gốc để xây dựng ObjectReader sẽ sử dụng biến thể mã hóa Base64 được chỉ định cho dữ liệu nhị phân được mã hóa Base64.
86 ObjectReader reader(Class<?> type)- Không được dùng nữa. Kể từ 2.5, sử dụng readerFor (Class) thay thế
87 ObjectReader reader(ContextAttributes attrs) - Phương thức Factory để xây dựng ObjectReader sẽ sử dụng các thuộc tính mặc định được chỉ định.
88 ObjectReader reader(DeserializationFeature feature) - Phương thức ban đầu để xây dựng ObjectReader với tính năng được chỉ định được kích hoạt (so với cài đặt mà phiên bản ánh xạ này có).
89 ObjectReader reader(DeserializationFeature first, DeserializationFeature... other) - Phương thức gốc để xây dựng ObjectReader với các tính năng được chỉ định được kích hoạt (so với cài đặt mà cá thể ánh xạ này có).
90 ObjectReader reader(FormatSchema schema) - Phương thức Factory để xây dựng ObjectReader sẽ chuyển đối tượng lược đồ cụ thể tới JsonParser được sử dụng để đọc nội dung.
91 ObjectReader reader(InjectableValues injectableValues) - Phương thức nhà máy để xây dựng ObjectReader sẽ sử dụng các giá trị có thể tiêm được chỉ định.
92 ObjectReader reader(JavaType type)- Không được dùng nữa. Kể từ 2.5, hãy sử dụng readerFor (JavaType) để thay thế
93 ObjectReader reader(JsonNodeFactory f) - Phương thức Factory để xây dựng ObjectReader sẽ sử dụng JsonNodeFactory được chỉ định để xây dựng cây JSON.
94 ObjectReader reader(TypeReference<?> type)- Không được dùng nữa. Kể từ 2.5, sử dụng readerFor (TypeReference) thay thế
95 ObjectReader readerFor(Class<?> type) - Phương thức ban đầu để xây dựng ObjectReader sẽ đọc hoặc cập nhật các trường hợp của loại được chỉ định
96 ObjectReader readerFor(JavaType type) - Phương thức ban đầu để xây dựng ObjectReader sẽ đọc hoặc cập nhật các trường hợp của loại được chỉ định
97 ObjectReader readerFor(TypeReference<?> type) - Phương thức ban đầu để xây dựng ObjectReader sẽ đọc hoặc cập nhật các trường hợp của loại được chỉ định
98 ObjectReader readerForUpdating(Object valueToUpdate) - Phương thức nhà máy để xây dựng ObjectReader sẽ cập nhật Đối tượng đã cho (thường là Bean, nhưng cũng có thể là Bộ sưu tập hoặc Bản đồ, nhưng KHÔNG phải là một mảng) với dữ liệu JSON.
99 ObjectReader readerWithView(Class<?> view) - Phương thức Factory để xây dựng ObjectReader sẽ giải mã hóa các đối tượng bằng cách sử dụng JSON View (bộ lọc) được chỉ định.
100 JsonNode readTree(byte[] content) - Phương pháp giải mã hóa nội dung JSON dưới dạng cây được thể hiện bằng cách sử dụng tập hợp các thể hiện JsonNode.
101 JsonNode readTree(File file) - Phương pháp giải mã hóa nội dung JSON dưới dạng cây được thể hiện bằng cách sử dụng tập hợp các thể hiện JsonNode.
102 JsonNode readTree(InputStream in) - Phương pháp giải mã hóa nội dung JSON dưới dạng cây được thể hiện bằng cách sử dụng tập hợp các thể hiện JsonNode.
103 <T extends TreeNode> T readTree(JsonParser p) - Phương pháp giải mã hóa nội dung JSON dưới dạng cây được thể hiện bằng cách sử dụng tập hợp các thể hiện JsonNode.
104 JsonNode readTree(Reader r) - Phương pháp giải mã hóa nội dung JSON dưới dạng cây được thể hiện bằng cách sử dụng tập hợp các thể hiện JsonNode.
105 JsonNode readTree(String content) - Phương pháp giải mã hóa nội dung JSON dưới dạng cây được thể hiện bằng cách sử dụng tập hợp các thể hiện JsonNode.
106 JsonNode readTree(URL source) - Phương pháp giải mã hóa nội dung JSON dưới dạng cây được thể hiện bằng cách sử dụng tập hợp các thể hiện 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) - Phương pháp giải mã hóa nội dung JSON từ tệp đã cho thành kiểu Java nhất định.
116 <T> T readValue(File src, JavaType valueType) - Phương pháp giải mã hóa nội dung JSON từ tệp đã cho thành kiểu Java nhất định.
117 <T> T readValue(File src, TypeReference valueTypeRef) - Phương pháp giải mã hóa nội dung JSON từ tệp đã cho thành kiểu Java nhất định.
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) - Phương pháp nạp chồng kiểu an toàn, về cơ bản là bí danh cho readValue (JsonParser, Class).
123 <T> T readValue(JsonParser p, ResolvedType valueType) - Phương pháp giải mã hóa nội dung JSON thành một kiểu Java, tham chiếu đến được truyền dưới dạng đối số.
124 <T> T readValue(JsonParser p, TypeReference<?> valueTypeRef) - Phương pháp giải mã hóa nội dung JSON thành một kiểu Java, tham chiếu đến được truyền dưới dạng đối số.
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) - Phương pháp giải mã nội dung JSON từ Chuỗi nội dung JSON đã cho.
128 <T> T readValue(String content, JavaType valueType) - Phương pháp giải mã nội dung JSON từ Chuỗi nội dung JSON đã cho.
129 <T> T readValue(String content, TypeReference valueTypeRef) - Phương pháp giải mã nội dung JSON từ Chuỗi nội dung JSON đã cho.
130 <T> T readValue(URL src, Class<T> valueType) - Phương pháp giải mã hóa nội dung JSON từ tài nguyên đã cho thành kiểu Java nhất định.
131 <T> T readValue(URL src, JavaType valueType)
132 <T> T readValue(URL src, TypeReference valueTypeRef) - Phương pháp giải mã hóa nội dung JSON từ tài nguyên đã cho thành kiểu Java nhất định.
133 <T> MappingIterator<T> readValues(JsonParser p, Class<T> valueType) - Phương pháp tiện lợi, tương đương về chức năng:
134 <T> MappingIterator<T> readValues(JsonParser p, JavaType valueType) - Phương pháp tiện lợi, tương đương về chức năng:
135 <T> MappingIterator<T> readValues(JsonParser p, ResolvedType valueType) - Phương pháp tiện lợi, tương đương về chức năng:
136 <T> MappingIterator<T> readValues(JsonParser p, TypeReference<?>valueTypeRef) - Phương pháp đọc chuỗi đối tượng từ luồng phân tích cú pháp.
137 ObjectMapper registerModule(Module module)- Phương pháp đăng ký một mô-đun có thể mở rộng chức năng được cung cấp bởi trình ánh xạ này; ví dụ: bằng cách thêm các nhà cung cấp cho các bộ tuần tự hóa và bộ giải mã tùy chỉnh.
138 ObjectMapper registerModules(Iterable<Module> modules)- Phương pháp thuận tiện để đăng ký các mô-đun cụ thể theo thứ tự; về mặt chức năng tương đương với:
139 ObjectMapper registerModules(Module... modules)- Phương pháp thuận tiện để đăng ký các mô-đun cụ thể theo thứ tự; về mặt chức năng tương đương với:
140 void registerSubtypes(NamedType... types) - Phương thức đăng ký lớp được chỉ định dưới dạng một kiểu con, để phân giải dựa trên tên kiểu có thể liên kết siêu kiểu với kiểu con (thay thế cho việc sử dụng chú thích).
141 ObjectMapper setAnnotationIntrospector(AnnotationIntrospector ai) - Phương pháp thiết lập AnnotationIntros Inspector được phiên bản ánh xạ này sử dụng cho cả tuần tự hóa và giải mã hóa.
142 ObjectMapper setAnnotationIntrospectors(AnnotationIntrospector serializerAI, AnnotationIntrospector deserializerAI) - Phương pháp thay đổi các thể hiện AnnotationIntros Inspector được cá thể ánh xạ này sử dụng để tuần tự hóa và giải mã hóa, chỉ định chúng một cách riêng biệt để có thể sử dụng phần nội quan khác nhau cho các khía cạnh khác nhau.
143 ObjectMapper setBase64Variant(Base64Variant v) - Phương thức sẽ cấu hình Base64Variant mặc định mà bộ tuần tự hóa và bộ giải mã byte [] sẽ sử dụng.
144 ObjectMapper setConfig(DeserializationConfig config) - Phương thức cho phép ghi đè đối tượng DeserializationConfig bên dưới.
145 ObjectMapper setConfig(SerializationConfig config) - Phương thức cho phép ghi đè đối tượng SerializationConfig bên dưới, chứa cài đặt cấu hình cụ thể cho tuần tự hóa.
146 ObjectMapper setDateFormat(DateFormat dateFormat) - Phương pháp cấu hình DateFormat mặc định để sử dụng khi tuần tự hóa các giá trị thời gian dưới dạng Chuỗi và giải mã hóa từ Chuỗi JSON.
147 ObjectMapper setDefaultPrettyPrinter(PrettyPrinter pp) - Phương pháp chỉ định PrettyPrinter để sử dụng khi bật chế độ "in đẹp mặc định" (bằng cách bật SerializationFeature.INDENT_OUTPUT)
148 ObjectMapper setDefaultTyping(TypeResolverBuilder<?> typer) - Phương pháp cho phép tự động bao gồm thông tin loại, sử dụng đối tượng xử lý được chỉ định để xác định loại ảnh hưởng của điều này, cũng như chi tiết về cách thông tin được nhúng.
149 ObjectMapper setFilterProvider(FilterProvider filterProvider) - Phương pháp định cấu hình trình ánh xạ này để sử dụng FilterProvider được chỉ định để ánh xạ Id bộ lọc với các phiên bản bộ lọc thực tế.
150 Object setHandlerInstantiator(HandlerInstantiator hi) - Phương thức cấu hình HandlerInstantiator để sử dụng để tạo các phiên bản của trình xử lý (chẳng hạn như trình tuần tự, trình giải mã, trình phân giải id kiểu và kiểu), cho một lớp.
151 ObjectMapper setInjectableValues(InjectableValues injectableValues) - Phương thức cấu hình InjectableValues ​​được sử dụng để tìm các giá trị cần tiêm.
152 ObjectMapper setLocale(Locale l) - Phương pháp ghi đè ngôn ngữ mặc định để sử dụng cho việc định dạng.
153 void setMixInAnnotations(Map<Class<?>,Class<?>> sourceMixins)- Không được dùng nữa. Kể từ 2,5: được thay thế bằng một hình thức lưu loát của phương pháp; setMixIns (java.util.Map <java.lang.Class <?>, java.lang.Class <? >>).
154 ObjectMapper setMixInResolver(ClassIntrospector.MixInResolver resolver) - Phương thức có thể được gọi để chỉ định trình phân giải nhất định để định vị các lớp trộn vào để sử dụng, ghi đè các ánh xạ được thêm trực tiếp.
155 ObjectMapper setMixIns(Map<Class<?>,Class<?>> sourceMixins) - Phương pháp sử dụng để xác định các chú thích kết hợp để sử dụng để bổ sung các chú thích mà các lớp có thể xử lý (có thể tuần tự hóa / có thể giải thích) có.
156 ObjectMapper setNodeFactory(JsonNodeFactory f) - Phương thức chỉ định JsonNodeFactory để sử dụng để xây dựng các nút cây cấp gốc (thông qua phương thức createObjectNode ()
157 ObjectMapper setPropertyInclusion(JsonInclude.Value incl) - Phương pháp thiết lập chiến lược bao gồm thuộc tính POJO mặc định cho tuần tự hóa.
158 ObjectMapper setPropertyNamingStrategy(PropertyNamingStrategy s) - Phương pháp thiết lập chiến lược đặt tên thuộc tính tùy chỉnh để sử dụng.
159 ObjectMapper setSerializationInclusion(JsonInclude.Include incl) - Phương thức tiện lợi, tương đương với cách gọi:
160 ObjectMapper setSerializerFactory(SerializerFactory f) - Phương pháp thiết lập SerializerFactory cụ thể để sử dụng cho việc xây dựng các bộ tuần tự (bean).
161 ObjectMapper setSerializerProvider(DefaultSerializerProvider p) - Phương pháp để thiết lập phiên bản SerializerProvider "bản thiết kế" để sử dụng làm cơ sở cho các phiên bản nhà cung cấp thực tế sử dụng để xử lý bộ nhớ đệm của các phiên bản JsonSerializer.
162 ObjectMapper setSubtypeResolver(SubtypeResolver str) - Phương pháp thiết lập trình phân giải kiểu phụ tùy chỉnh để sử dụng.
163 ObjectMapper setTimeZone(TimeZone tz) - Phương pháp ghi đè TimeZone mặc định để sử dụng cho việc định dạng.
164 ObjectMapper setTypeFactory(TypeFactory f) - Phương thức có thể được sử dụng để ghi đè cá thể TypeFactory được người lập bản đồ này sử dụng.
165 ObjectMapper setVisibility(PropertyAccessor forMethod, JsonAutoDetect.Visibility visibility) - Phương pháp tiện lợi cho phép thay đổi cấu hình cho các Trình kiểm tra khả năng hiển thị bên dưới, để thay đổi chi tiết về các loại thuộc tính được tự động phát hiện.
166 ObjectMapper setVisibility(VisibilityChecker<?> vc) - Phương thức thiết lập VisibilityChecker hiện được định cấu hình, đối tượng được sử dụng để xác định xem phần tử thuộc tính đã cho (phương thức, trường, hàm tạo) có thể được tự động phát hiện hay không.
167 void setVisibilityChecker(VisibilityChecker<?> vc)- Không được dùng nữa. Vì 2.6 sử dụng setVisibility (VisibilityChecker) để thay thế.
168 JsonParser treeAsTokens(TreeNode n) - Phương thức xây dựng JsonParser từ biểu diễn cây JSON.
169 <T> T treeToValue(TreeNode n, Class<T> valueType) - Phương thức chuyển đổi tiện lợi sẽ liên kết dữ liệu đã cho cây JSON chứa thành giá trị cụ thể (thường là kiểu bean).
170 <T extends JsonNode> T valueToTree(Object fromValue)- Đảo ngược của treeToValue (com.fasterxml.jackson.core.TreeNode, java.lang.Class <T>); được đưa ra một giá trị (thường là bean), sẽ xây dựng biểu diễn Cây JSON tương đương.
171 Version version() - Phương thức sẽ trả về thông tin phiên bản được lưu trữ trong và đọc từ jar có chứa lớp này.
172 ObjectWriter writer() - Phương pháp thuận tiện để xây dựng ObjectWriter với cài đặt mặc định.
173 ObjectWriter writer(Base64Variant defaultBase64) - Phương thức gốc để xây dựng ObjectWriter sẽ sử dụng biến thể mã hóa Base64 được chỉ định cho dữ liệu nhị phân được mã hóa Base64.
174 ObjectWriter writer(CharacterEscapes escapes) -
175 ObjectWriter writer(ContextAttributes attrs) - Phương thức Factory để xây dựng ObjectWriter sẽ sử dụng các thuộc tính mặc định được chỉ định.
176 ObjectWriter writer(DateFormat df)- Phương thức Factory để xây dựng ObjectWriter sẽ tuần tự hóa các đối tượng bằng cách sử dụng DateFormat được chỉ định; hoặc, nếu null được chuyển, sử dụng dấu thời gian (số 64-bit.
177 ObjectWriter writer(FilterProvider filterProvider) - Phương thức Factory để xây dựng ObjectWriter sẽ tuần tự hóa các đối tượng bằng cách sử dụng nhà cung cấp bộ lọc được chỉ định.
178 ObjectWriter writer(FormatSchema schema) - Phương thức Factory để xây dựng ObjectWriter sẽ chuyển đối tượng lược đồ cụ thể đến JsonGenerator được sử dụng để viết nội dung.
179 ObjectWriter writer(PrettyPrinter pp) - Phương thức gốc để xây dựng ObjectWriter sẽ tuần tự hóa các đối tượng bằng cách sử dụng máy in đẹp được chỉ định để thụt lề (hoặc nếu null, không có máy in đẹp)
180 ObjectWriter writer(SerializationFeature feature) - Phương thức gốc để xây dựng ObjectWriter với tính năng được chỉ định được kích hoạt (so với cài đặt mà cá thể ánh xạ này có).
181 ObjectWriter writer(SerializationFeature first, SerializationFeature... other) - Phương thức ban đầu để xây dựng ObjectWriter với các tính năng cụ thể được kích hoạt (so với cài đặt mà cá thể ánh xạ này có).
182 ObjectWriter writerFor(Class<?> rootType) - Phương thức Factory để xây dựng ObjectWriter sẽ tuần tự hóa các đối tượng bằng cách sử dụng kiểu gốc được chỉ định, thay vì kiểu thời gian chạy thực tế của giá trị.
183 ObjectWriter writerFor(JavaType rootType) - Phương thức Factory để xây dựng ObjectWriter sẽ tuần tự hóa các đối tượng bằng cách sử dụng kiểu gốc được chỉ định, thay vì kiểu thời gian chạy thực tế của giá trị.
184 ObjectWriter writerFor(TypeReference<?> rootType) - Phương thức Factory để xây dựng ObjectWriter sẽ tuần tự hóa các đối tượng bằng cách sử dụng kiểu gốc được chỉ định, thay vì kiểu thời gian chạy thực tế của giá trị.
185 ObjectWriter writerWithDefaultPrettyPrinter() - Phương thức Factory để xây dựng ObjectWriter sẽ tuần tự hóa các đối tượng bằng cách sử dụng máy in đẹp mặc định để thụt lề.
186 ObjectWriter writerWithType(Class<?> rootType)- Không được dùng nữa. Kể từ 2.5, hãy sử dụng writeFor (Class) để thay thế.
187 ObjectWriter writerWithType(JavaType rootType)- Không được dùng nữa. Kể từ 2.5, hãy sử dụng writeFor (JavaType) để thay thế.
188 ObjectWriter writerWithType(TypeReference<?> rootType)- Không được dùng nữa. Kể từ 2.5, hãy sử dụng writeFor (TypeReference) để thay thế.
189 ObjectWriter writerWithView(Class<?> serializationView) - Phương thức Factory để xây dựng ObjectWriter sẽ tuần tự hóa các đối tượng bằng cách sử dụng JSON View (bộ lọc) được chỉ định.
190 void writeTree(JsonGenerator jgen, JsonNode rootNode) - Phương pháp tuần tự hóa Cây JSON đã cho, sử dụng trình tạo được cung cấp.
191 void writeTree(JsonGenerator jgen, TreeNode rootNode)
192 void writeValue(DataOutput out, Object value)
193 void writeValue(File resultFile, Object value) - Phương pháp có thể được sử dụng để tuần tự hóa bất kỳ giá trị Java nào dưới dạng đầu ra JSON, được ghi vào Tệp được cung cấp.
194 void writeValue(JsonGenerator g, Object value) - Phương pháp có thể được sử dụng để tuần tự hóa bất kỳ giá trị Java nào dưới dạng đầu ra JSON, sử dụng JsonGenerator được cung cấp.
195 void writeValue(OutputStream out, Object value) - Phương pháp có thể được sử dụng để tuần tự hóa bất kỳ giá trị Java nào dưới dạng đầu ra JSON, sử dụng luồng đầu ra được cung cấp (sử dụng mã hóa JsonEncoding.UTF8).
196 void writeValue(Writer w, Object value) - Phương thức có thể được sử dụng để tuần tự hóa bất kỳ giá trị Java nào dưới dạng đầu ra JSON, sử dụng Writer được cung cấp.
197 byte[] writeValueAsBytes(Object value) - Phương thức có thể được sử dụng để tuần tự hóa bất kỳ giá trị Java nào dưới dạng một mảng byte.
198 String writeValueAsString(Object value) - Phương thức có thể được sử dụng để tuần tự hóa bất kỳ giá trị Java nào dưới dạng Chuỗi.

Các phương thức kế thừa

Lớp này kế thừa các phương thức từ các lớp sau:

  • java.lang.Object

Ví dụ về ObjectMapper

Tạo chương trình java sau bằng cách sử dụng bất kỳ trình soạn thảo nào bạn chọn C:/> Jackson_WORKSPACE

Tệp: 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

Biên dịch các lớp bằng cách sử dụng javac trình biên dịch như sau:

C:\Jackson_WORKSPACE>javac JacksonTester.java

Bây giờ hãy chạy jacksonTester để xem kết quả:

C:\Jackson_WORKSPACE>java JacksonTester

Xác minh đầu ra

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