Clasa ObjectMapper din Jackson

Clasa ObjectMapper din Jackson

ObjectMapper este una dintre cele mai importante clase disponibile în Jackson bibliotecă. Este folosit pentru a citi și scrie date JSON. Este responsabil pentru citirea datelor din sau către fișierul POJO și către și de la un model de arbore JSON.

Există următoarele caracteristici ale clasei ObjectMapper:

  1. Acceptă concepte avansate precum Polimorfism și Recunoașterea obiectelor.
  2. Este foarte personalizabil pentru a lucra cu diferite stiluri de conținut JSON.
  3. Funcționează ca o fabrică pentru avans ObjectReader și ObjectWriter clase.

Clasa ObjectMapper este declarată în felul următor:

 public class ObjectMapper extends ObjectCodec implements Versioned, Serializable  

Clase imbricate

Următorul tabel definește clasele care extind clasa ObjectMapper sau, se poate spune, clasele imbricate ale clasei ObjectMapper.

Clasă Descriere
DefaultTypeResolverBuilder Este un personalizat TypeResolverBuilder clasa care este folosită pentru a obține constructorii de rezoluție de tip, cu care putem folosi „Tastare implicită”.
Tastare implicită Pentru a specifica tipul de tipuri, enumerarile sunt folosite cu metoda enableDefaultTyping().

Acum, să înțelegem câmpurile, constructorii și metodele clasei ObjectMapper:

Câmpurile clasei ObjectMapper

protected DefaultDeserializationContext _deserializationContext

Este un obiect context de tip plan care este stocat pentru a permite subclase personalizate.

protected DeserializationConfig _deserializationConfig

Este un obiect de configurare care este utilizat pentru definirea setărilor globale de bază pentru procesul de deserializare.

protejat JsonFactory jsonFactory

Pentru a crea o instanță de JsonParser și JsonGenerator, este folosit JsonFactory.

protejate InjectableValues ​​_injectableValues

Este un furnizor care este utilizat pentru injectarea valorilor în POJO-uri deserializate.

protejat ConfigOverrides _propertyOverrides

Este folosit pentru a accesa suprascrierile de configurare pentru fiecare tip activ în prezent.

protejate SimpleMixInResolver _mixIns

Este o mapare care este utilizată pentru a defini o modalitate de aplicare a adnotărilor mix-in. Cartografierea se face în felul următor:

Cheie: Tastați pentru a primi adnotări suplimentare.

Valoare: Tip care are adnotări pentru a „amesteca”

protejat Set _registeredModuleTypes

Este un set care definește setul de tipuri de module care au fost înregistrate.

protejat SerializationConfig _serializationConfig

Este, de asemenea, un obiect de configurare care este utilizat pentru a defini setările globale de bază pentru procesul de serializare.

protejat ConcurrentHashMap _rootDeserializatori

Este o hartă care este folosită pentru a ține evidența deserializatoarelor la nivel de rădăcină. Este o hartă de nivel principal.

protejat SerializerFactory _serializerFactory

Este o fabrică care este folosită pentru a construi serializatoare.

protejat SubtypeResolver _subtypeResolver

Este folosit pentru a înregistra subtipuri și pentru a le rezolva pentru super/subtipuri după cum este necesar.

protejat TypeFactory _typeFactory

Este o fabrică care este folosită pentru a crea instanțe JavaType. Acestea sunt necesare pentru a permite modulelor să adauge mai multe tipuri de manipulare personalizate.

protected DefaultSerializerProvider _serializerProvider

Este un obiect care este responsabil pentru gestionarea accesului la serializatoarele utilizate pentru serializare.

Setări de bază statice protejate DEFAULT_BASE

Setările de bază includ valorile implicite utilizate pentru toate instanțele ObjectMapper.

Constructorii clasei ObjectMapper

Există următorii constructori ai clasei ObjectMapper:

Constructor Descriere
ObjectMapper() Este un constructor implicit folosit pentru a construi o instanță care utilizează implicit JsonFactory, SerializerProvider, și BeanSerializerFactory.
ObjectMapper (fabrica JsonFactory) Este folosit pentru a construi o instanță care utilizează JsonFactory dată. JsonFactory dat este folosit pentru a construi JsonParsers și/sau JsonGenerators.
ObjectMapper (fabrica JsonFactory, furnizor SerializerProvider1, furnizor DeserializerProvider2) Este folosit pentru a construi o instanță care folosește data JsonFactory, SerializerProvider, și DeserializerProvider. JsonFactory dat este folosit pentru a construi JsonParsers și/sau JsonGenerators.
ObjectMapper protejat (Mapper ObjectMapper) Este un constructor de copiere pentru a suporta copy().

Metode de clasă ObjectMapper

Clasa ObjectMapper definește următoarele metode:

Metodă Tip de returnare Descriere
_checkInvalidCopy(Exp. clasa) gol Este folosit pentru a verifica o copie nevalidă.
_configAndWriteValue(JsonGenerator g, valoarea obiectului) gol Este folosit pentru configurarea generatorului atunci când este necesar și apoi pentru efectuarea funcționalității de scriere.
_convert(Obiect de laValue, JavaType laValueType) Obiect Este folosit pentru a obține implementarea reală a conversiei. Aici, metodele de citire și scriere nu sunt folosite pentru cod.
_initForReading(JsonParser p) JsonToken Este folosit pentru a se asigura dacă analizatorul dat este gata pentru citirea conținutului pentru legarea datelor sau nu.
_findRootDeserializer(DeserializationContext ctxt, JavaType valueType) JsonDeserializator Pentru valoarea transmisă la nivel de rădăcină, dacă dorim să găsim deserializatorul, folosim această metodă.
_newReader (configurație DeserializationConfig)
Metoda similara:
  1. _newReader(Configurație DeserializationConfig, JavaType valueType, Object valueToUpdate, FormatSchema schema, InjectableValues ​​injectableValues)
ObjectReader Este o metodă din fabrică, adică folosită pentru a obține instanțele ObjectReader de subtipul adecvat. Pentru a utiliza această metodă, este necesar ca subclasele să suprascrie.
_newWriter (configurație SerializationConfig)
Metode similare:
  1. _newWriter (configurație SerializationConfig, schema FormatSchema)
  2. _newWriter (configurație SerializationConfig, JavaType rootType, PrettyPrinter pp)
ObjectWriter Este o metodă din fabrică, adică utilizată pentru a obține instanțele ObjectWriter de subtipul adecvat. Pentru a utiliza această metodă, este necesar ca subclasele să suprascrie.
_readValue(DeserializationConfig cfg, JsonParser p, JavaType valueType) Obiect Este folosit pentru a obține un obiect care definește citirea valorii și operația de legare.
_serializerProvider(configurație SerializationConfig) DefaultSerializerProvider Este o metodă de ajutor care poate fi suprascrisă, care este utilizată pentru a construi SerializerProvider.
acceptJsonFormatVisitor(Tipul de clasă, vizitatorul JsonFormatVisitorWrapper)
Metoda similara:
  1. acceptJsonFormatVisitor (tip JavaType, vizitator JsonFormatVisitorWrapper)
gol
gol
Dacă dorim să vizităm ierarhia tipurilor unui anumit tip cu vizitatorul specificat, folosim această metodă.
addHandler(DeserializationProblemHandler h) ObjectMapper Pentru a gestiona problemele specificate în timpul deserializării, folosim un DeserializationProblemHandler specificat, iar pentru a adăuga handler, folosim această metodă.
addMixIn(Class target, Class mixinSource) ObjectMapper Pentru a folosi adnotarea mix-in pentru o clasă sau o interfață de creștere specificată, folosim această metodă pentru ao adăuga.
canDeserialize (tip JavaType) boolean Este folosit pentru a verifica dacă mapper-ul poate deserializa un obiect de un tip specificat sau nu.
canDeserialize (tip JavaType, cauza AtomicReference) boolean Este similar cu metoda anterioară. Singura diferență este că poate returna throwable-ul care a fost aruncat în momentul construirii serializatorului. Aruncabilul poate fi folosit pentru a descoperi problema reală.
canSerialize(Tipul de clasă) boolean Este folosit pentru a verifica dacă mapper-ul poate serializa un obiect de un tip specificat sau nu.
canSerialize (Tipul de clasă, cauza AtomicReference) boolean Este similar cu metoda anterioară. Singura diferență este că poate returna throwable-ul care a fost aruncat în momentul construirii serializatorului. Aruncabilul poate fi folosit pentru a descoperi problema reală.
clearProblemHandlers() ObjectMapper Este una dintre metodele care este folosită pentru a elimina toate instanțele DeserializationProblemHandlers din mapper care sunt înregistrate.
configure(DeserializationFeature f, stare booleană)
metode similare:
  1. configure(JsonGenerator.Feature f, stare booleană)
  2. configure(JsonParser.Feature f, stare booleană)
  3. configure(MapperFeature f, stare booleană)
  4. configure(SerializationFeature f, stare booleană)
ObjectMapper Este folosit pentru a schimba starea unei funcții de deserializare activată/dezactivată, Json Generator, JsonParser, Mapper sau Serialization pentru cartografierea obiectelor, instanțe generator, instanțe parser, instanță mapper sau mapper obiect.
constructType(Tip t) JavaType Dacă vrem să construim JavaType dintr-un tip dat fără context explicit, folosim această metodă.
convertValue(Obiect de laValoare, Clasa laTipValoare)
Metode similare:
  1. convertValue(Obiect de laValoare, JavaType laValueType)
T Dacă dorim să realizăm o conversie în doi pași a unei anumite valori într-o instanță a unui anumit tip de valoare, folosim metoda converValue().
createArrayNode() ArrayNode Este folosit pentru a crea ArrayNode.
defaultClassIntrospector() ClassIntrospector Dacă dorim să folosim ClassIntrospector implicit, folosim această metodă de ajutor Overridable pentru a-l construi.
dezactivare (funcția de deserializare)
Metode similare:
  1. dezactivare (funcția de deserializare mai întâi, caracteristica de deserializare... f)
  2. dezactivați (JsonGenerator.Feature... caracteristici)
  3. disable(JsonParser.Feature... caracteristici)
  4. dezactivați (MapperFeature... f)
  5. dezactivați (funcția de serializare f)
  6. dezactivare (serializationFeature mai întâi, SerializationFeature... f)
ObjectMapper Este folosit pentru a dezactiva date DeserializationConfig, JsonGenerator.Features pentru instanțele parserului, JsonParser.Features pentru instanțe parser ale mapperului de obiecte.
disableDefaultTyping() ObjectMapper De multe ori, trebuie să dezactivăm includerea automată a informațiilor de tip și, în acest scop, folosim această metodă.
activare (funcție de deserializare)
  1. activare (funcția de deserializare mai întâi, caracteristica de deserializare... f)
  2. enable(JsonGenerator.Feature... caracteristici)
    enable(JsonParser.Feature... caracteristici)
  3. activare(MapperFeature... f)
  4. activare (SerializationFeature f)
  5. activare (SerializationFeature mai întâi, SerializationFeature... f)
ObjectMapper Este folosit pentru a activa DeserializationConfig, JsonGenerator.Features pentru instanțele parserului, JsonParser.Features pentru instanțele parserului ale mapperului de obiecte.
enableDefaultTyping()
Metode similare:
  1. enableDefaultTyping(ObjectMapper.DefaultTyping dti)
  2. enableDefaultTyping(ObjectMapper.DefaultTyping aplicabilitate, JsonTypeInfo.As includeAs)
  3. enableDefaultTypingAsProperty(ObjectMapper.DefaultTyping aplicabilitate, String propertyName)
ObjectMapper Pentru a utiliza includerea automată a informațiilor de tip pentru deserializarea tipurilor polimorfe, folosim această metodă pentru ao activa.
findAndRegisterModules() ObjectMapper Este similar cu metoda mapper.registerModules(mapper.findModules()).
findModule()
Metode similare:
  1. findModule(ClassLoader classLoader)
Listă Este folosit pentru a localiza metodele disponibile. Metoda folosește facilitatea JDK ServiceLoader cu SPI furnizat de modul.
getDateFormat() Formatul datei Este folosit pentru a obține formatul datei.
getDeserializationConfig() DeserializationConfig Este folosit pentru a obține obiectul DeserializationConfig implicit partajat. Obiectul returnat definește setările de configurare pentru deserializare.
getDeserializationContext() DeserializationContext Este folosit pentru a obține DeserializationContext curent.
getFactory() JsonFactory Dacă mapatorul trebuie să construiască un parser și generatoare Json, are nevoie de fabrica json și pentru a obține asta, folosim metoda getFactory().
getInjectableValues() Valori injectabile Este folosit pentru a obține valori injectabile.
getJsonFactory() JsonFactory Este o metodă depreciată de a obține fabrica Json.
getNodeFactory() JsonNodeFactory Este folosit pentru a obține JsonNodeFactory care este folosit de mapator în momentul construirii directe a instanțelor rădăcină JsonNode pentru Arbore.
getPropertyNamingStrategy() PropertyNamingStrategy După cum sugerează și numele, este folosit pentru strategia de denumire a proprietății.
getSerializationConfig() SerializationConfig Este folosit pentru a obține obiectul SerializationConfig implicit partajat. Obiectul returnat definește setările de configurare pentru serializare.
getSerializerFactory() SerializerFactory Este folosit pentru a obține SerializerFactory curent.
getSerializerProvider() SerializerProvider Este un accesoriu pentru fabrică, care este folosit pentru a crea instanțe prin apelarea DefaultSerializerProvider.createInstance(SerializationConfig, SerializerFactory).
getSerializerProviderInstance() SerializerProvider Este un accesoriu care este folosit pentru a construi și a returna o instanță a SerializerProvider, pe care o putem folosi pentru a accesa serializatoare.
getSubtypeResolver() Subtype Resolver Este folosit pentru a accesa solutorul de subtip în uz.
getTypeFactory() TypeFactory Este un accesoriu care este folosit pentru a obține o instanță a TypeFactory configurată în prezent.
getVisibilityChecker() VisibilityChecker Este folosit pentru a accesa verificatorul de vizibilitate configurat în prezent.
isEnabled(DeserializationFeature f)
Metode similare:
  1. este activat(JsonFactory.Feature f)
  2. isEnabled(JsonGenerator.Feature f)
  3. isEnabled(JsonParser.Feature f)
  4. este activat (MapperFeature f)
  5. este activat (funcția de serializare f)
boolean Metoda isEnable() și variațiile sale sunt utilizate pentru a verifica dacă caracteristica specifică deserializării, JsonFactory, JsonGenerator, JsonParser, Mapper sau Serializare este activată sau nu.
mixInCount() int Este folosit pentru a obține numărul de mixIn.
cititor()
Metode similare:
  1. cititor(Base64Variant defaultBase64)
  2. cititor (tip de clasă)
  3. cititor(Atribute de context)
  4. cititor (funcția de deserializare)
  5. cititor (funcția de deserializare mai întâi, caracteristica de deserializare... altele)
  6. reader(FormatSchema schema)
  7. cititor(Valori injectabile Valori injectabile)
  8. cititor (tip JavaType)
  9. cititor(JsonNodeFactory f)
  10. cititor(Tip de referință)
ObjectReader Metoda reader() și variațiile sale sunt metodele din fabrică care sunt utilizate pentru a construi o instanță a ObjectReader. Pe baza cerinței, putem trece varianta de codificare Base64 pentru date binare codificate Base64, atribute implicite, caracteristici activate, valori injectabile, JsonNodeFactory pentru construirea arborilor JSON.
readerFor(Tipul de clasă) ObjectReader Este o metodă din fabrică care este folosită pentru a construi ObjectReader, permițând operațiuni de citire sau actualizare pentru instanțe de tipul specificat.
readerFor(tip JavaType) ObjectReader Este o metodă din fabrică care este utilizată pentru a construi ObjectReader, permițând operațiuni de citire sau actualizare pentru instanțe ale JavaType specificate.
readerFor(TypeReference tip) ObjectReader Este o metodă din fabrică care este utilizată pentru a construi ObjectReader, permițând operațiuni de citire sau actualizare pentru instanțe ale TypeReference date.
readerForUpdating(Valoare obiectToUpdate) ObjectReader Este o metodă din fabrică care este folosită pentru a construi ObjectReader permițând operațiuni de actualizare pentru obiectul dat.
readerWithView(Vizualizare clasă) ObjectReader Este o metodă din fabrică care este folosită pentru a construi ObjectReader, permițând
deserializarea obiectelor cu vizualizarea JSON dată.
readTree(conținut de octet[])
  1. readTree (fișier fișier)
  2. readTree(InputStream in)
  3. readTree(JsonParser p)
  4. readTree (Cititor r)
  5. readTree(Conținut șir)
  6. readTree (sursa URL)
JsonNode
SAU
T
ReadTree() și variațiile sale sunt folosite pentru a deserializa conținutul JSON ca arbore exprimat folosind un set de instanțe JsonNode.
readValue(byte[] src, Class valueType)
Metode similare
  1. readValue(byte[] src, int offset, int len, JavaType valueType)
  2. readValue(byte[] src, int offset, int len, Class valueType)
  3. readValue(byte[] src, JavaType valueType)
  4. readValue(DataInput src, Class valueType)
  5. readValue(Fișier src, Class valueType)
  6. readValue(DataInput src, JavaType valueType)
  7. readValue(Fișier src, JavaType valueType)
  8. readValue(Fișier src, TypeReference valueTypeRef)
  9. readValue(InputStream src, JavaType valueType)
  10. readValue(byte[] src, TypeReference valueTypeRef)
  11. readValue(InputStream src, Class valueType)
  12. readValue(InputStream src, TypeReference valueTypeRef)
  13. readValue(JsonParser p, JavaType valueType)
  14. readValue(JsonParser p, Class valueType)
  15. readValue(JsonParser p, ResolvedType valueType)
  16. readValue(byte[] src, int offset, int len, TypeReference valueTypeRef)
  17. readValue(Reader src, TypeReference valueTypeRef)
  18. readValue(JsonParser p, TypeReference valueTypeRef)
  19. readValue(Reader src, JavaType valueType)
  20. readValue(Conținut șir, valoare TypeReferenceTypeRef)
  21. readValue(Reader src, Class valueType)
  22. readValue(Conținut șir, Class valueType)
  23. readValue(Conținut șir, JavaType valueType)
  24. readValue(URL src, TypeReference valueTypeRef)readValue(URL src, Class valueType)
  25. readValue(URL src, JavaType valueType)
T
SAU
MappingIterator
ReadValue() și variațiile sale sunt folosite pentru a deserializa conținutul JSON
  1. Din fișierul dat într-un tip Java dat, într-un tip non-container sau într-o referință de tip Java la care este transmis ca argument.
  2. Din conținutul JSON dat în String.
  3. De la resursa dată în tipul Java dat.
Variațiile sunt utilizate în funcție de cerințe diferite.
readValues(JsonParser p, Class valueType)
Metode similare:
  1. readValues(JsonParser p, JavaType valueType)
  2. readValues(JsonParser p, ResolvedType valueType)
  3. readValues(JsonParser p, TypeReferencevalueTypeRef)
MappingIterator ReadValues() și variațiile sale sunt folosite pentru a citi secvența de obiecte din fluxul de analiză.
registerModule(modul modul)
Metode similare:
  1. registerModule (module iterabile)
  2. registerModule(Modul... module)
ObjectMapper RegisterModule() și variațiile sale sunt folosite pentru a înregistra un modul care are capacitatea de a extinde funcționalitatea oferită de mapper.
registerSubtypes(Tip Nume... tipuri) gol Este folosit pentru a înregistra clasa dată ca subtip. Făcând asta, rezoluția bazată pe nume de tip poate lega supertipuri la subtipuri.
setAnnotationIntrospector(AdnotationIntrospector ai) ObjectMapper Este folosit pentru a seta AnnotationIntrospector, care este folosit de instanța mapper atât pentru serializare, cât și pentru deserializare.
setAnnotationIntrospectors(AnnotationIntrospector serializerAI, AnnotationIntrospector deserializerAI) ObjectMapper Este folosit pentru a schimba instanța de AnnotationIntrospector utilizată de instanța actuală de cartografiere pentru serializare și deserializare.
setBase64Variant(Base64Variant v) ObjectMapper Este folosit pentru a configura Base64Variant implicit care va fi utilizat de către serializatoarele și deserializatoarele byte[].
setConfig(Configurație deserializationConfig) ObjectMapper Pentru a efectua suprascrierea obiectului DeserializationConfig subiacent, folosim această metodă.
setConfig(configurație SerializationConfig) ObjectMapper Pentru a efectua suprascrierea obiectului SerializationConfig subiacent care are setări de configurare specifice serializării, folosim această metodă.
setDateFormat(DateFormat dateFormat) ObjectMapper Este folosit pentru a configura DataFormat implicit pentru a-l folosi în momentul serializării valorilor de timp ca șiruri de caractere sau deserializării din șiruri JSON.
setDefaultPrettyPrinter(PrettyPrinter pp) ObjectMapper Este folosit pentru a specifica PrettyPrinter pentru a-l folosi atunci când „imprimarea destul de implicită” este activată.
setDefaultTyping(TypeResolverBuilder typer) ObjectMapper Este folosit pentru a permite includerea automată a informațiilor de tip.
setHandlerInstantiator(HandlerInstantiator salut) Obiect Este folosit pentru a configura HandlerInstantiator pentru a fi utilizat pentru crearea instanțelor de gestionare.
setFilterProvider(FilterProvider filterProvider) ObjectMapper Este folosit pentru a configura mapatorul curent pentru a utiliza FilterProvider specificat pentru maparea ID-urilor de filtru la instanțe reale de filtru.
setInjectableValues(InjectableValues ​​injectableValues) ObjectMapper Este folosit pentru a configura InjectableValues ​​care este folosit pentru a găsi valori de injectat.
setLocale(Local l) ObjectMapper Este folosit pentru a suprascrie localitatea implicită de utilizat pentru formatare.
setMixInResolver(ClassIntrospector.MixInResolver resolve) ObjectMapper Folosim această metodă pentru a specifica rezolutorul dat pentru a localiza clasele mix-in de utilizat, suprascriind mapările adăugate direct.
setMixInAnnotations(Hartă sourceMixins) gol Este o metodă amortizată pentru definirea adnotărilor mix-in.
setNodeFactory(JsonNodeFactory f) ObjectMapper Este folosit pentru a specifica JsonNodeFactory de utilizat pentru construirea nodurilor de arbore la nivel de rădăcină.
setMixIns(Hartă sourceMixins) ObjectMapper Este folosit pentru a defini adnotările mix-in care să fie utilizate pentru amplificarea adnotărilor pe care le au clasele procesabile.
setPropertyInclusion(JsonInclude.Value incl) ObjectMapper Este folosit pentru a seta strategia implicită de includere a proprietăților POJO pentru serializare.
setPropertyNamingStrategy(PropertyNamingStrategy s) ObjectMapper Este folosit pentru a seta strategia personalizată de denumire a proprietăților de utilizat.
setSerializerFactory(SerializerFactory f) ObjectMapper Este folosit pentru a seta SerializerFactory specifică pe care să o folosească pentru construirea de serializatoare (fasole).
setSerializerProvider(DefaultSerializerProvider p) ObjectMapper Este folosit pentru a seta instanța SerializerProvider „blueprint” pentru a o folosi ca bază pentru instanțe efective ale furnizorului de utilizat pentru gestionarea stocării în cache a instanțelor JsonSerializer.
setSubtypeResolver(SubtypeResolver str) ObjectMapper Este folosit pentru a seta soluția de subtip personalizat de utilizat.
setTimeZone(TimeZone tz) ObjectMapper Este folosit pentru a suprascrie fusul orar prestabilit de utilizat pentru formatare.
setTypeFactory(TypeFactory f) ObjectMapper Este folosit pentru a suprascrie instanța TypeFactory, care este folosită de mapatorul curent.
setVisibility(PropertyAccessor forMethod, JsonAutoDetect.Visibility visibility)
  1. setVisibility(VisibilityChecker vc)
  2. setVisibilityChecker(VisibilityChecker vc)
ObjectMapper SetVisibility() și variația acestuia sunt folosite pentru a seta VisibilityChecker configurat în prezent. Instanța ObjectMapper returnată este utilizată pentru a verifica dacă elementul de proprietate dat poate fi detectat automat sau nu.
treeAsTokens(TreeNode n) JsonParser Este folosit pentru a construi un JsonParser din reprezentarea arborelui JSON.
treeToValue(TreeNode n, Class valueType) T Este folosit pentru a lega datele pe care arborele JSON le conține într-un anumit tip de valoare.
versiune() Versiune Este folosit pentru a obține informațiile despre versiune stocate și citite din borcanul care conține această clasă.
scriitor()
  1. scriitor (Base64Variant defaultBase64)
  2. scriitor (CaracterEscapes escapes)
  3. scriitor(Atribute context)
  4. scriitor (DateFormat df)
  5. scriitor (FilterProvider filterProvider)
  6. writer(FormatSchema schema)
  7. scriitor (PrettyPrinter pp)
  8. scriitor (funcția de serializare)
  9. scriitor (SerializationFeature mai întâi, SerializationFeature... altele)
ObjectWriter Scrie () și variațiile sale sunt folosite pentru a construi ObjectWriter cu setări implicite, având în vedere varianta de codificare Base64 pentru date binare codificate în Base64, detalii de evadare a caracterelor pentru ieșire, atribute implicite, DateFormat, furnizor de filtru, obiect de schemă la JsonGenerator utilizat pentru scrierea conținutului, imprimantă frumoasă pentru indentare sau funcția activată.
writerFor(Class rootType) - ObjectWriter Este folosit pentru a construi ObjectWriter pentru serializarea obiectelor folosind un tip de rădăcină specificat în loc de tipul real de valoare de rulare.
writerFor(JavaType rootType) ObjectWriter Este folosit pentru a construi ObjectWriter pentru serializarea obiectelor folosind un tip de rădăcină specificat în loc de tipul real de valoare de rulare.
writerFor(TypeReference rootType) ObjectWriter Este folosit pentru a construi ObjectWriter pentru serializarea obiectelor folosind un tip de rădăcină specificat în loc de tipul real de valoare de rulare.
writerWithDefaultPrettyPrinter() ObjectWriter Este o metodă din fabrică care este folosită pentru a construi ObjectWriter pentru serializarea obiectelor folosind imprimanta destul de implicită pentru indentare.
writerWithType (Tip rădăcină de clasă)
  1. writerWithType (Tip rădăcină de clasă)
  2. writerWithType(TypeReference rootType)
ObjectWriter Aceste metode sunt amortizate și, în locul lor, folosim metoda writerFor(TypeReference).
writerWithView(Vizualizare serializare clasă) ObjectWriter Este o metodă din fabrică care este utilizată pentru a construi ObjectWriter pentru serializarea obiectelor folosind vizualizarea JSON specificată.
writeTree(JsonGenerator jgen, JsonNode rootNode) gol Este folosit pentru serializarea arborelui JSON furnizat folosind JsonGenerator dat.
writeValue(Fișier rezultatFile, Object value) gol Este folosit pentru a serializa valoarea Java ca ieșire JSON și pentru a o scrie în datele date fişier.
writeValue(JsonGenerator g, valoare obiect). gol Este folosit pentru a serializa valorile Java ca ieșire JSON folosind datele date JsonGenerator.
writeValue(OutputStream out, valoare obiect) gol Este folosit pentru a serializa valoarea Java ca ieșire JSON utilizând valoarea dată OutputStream.
writeValue(Writer w, valoare obiect) gol Este folosit pentru a serializa valorile Java ca ieșire JSON folosind datele date Scriitor.
writeValueAsBytes(Valoare obiect) octet[] Este folosit pentru serializarea valorilor Java ca o matrice de octeți.
writeValueAsString(Valoare obiect) Şir Este folosit pentru serializarea valorilor Java ca șir.

JacksonExample.java

 //import required classes and package if any package javaTpoint.Jackson; import java.io.IOException; import java.util.List; import com.fasterxml.jackson.core.JsonParseException; import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.ObjectMapper; //create class JacksonExample to understand implementation of Jackson public class JacksonExample { // main() method start public static void main(String args[]){ // create an instance of ObjectMapper class ObjectMapper mapper = new ObjectMapper(); // create a JSON string of employee details to deserilized object String stdString = '{
'students' : [
{
'stdId':'001',
'course':'MCA','+'
'firstName':'Nicholas',
'lastName':'Clemens',
'preferredFullName':'Nicholas Clemens','+'
'enrol':'S010',
'region':'indian',
'phoneNumber':'408-1234567',
'emailAddress''+':'[email protected]'
},
{
'stdId':'002',
'course':'BCA','+'
'firstName':'Sharon',
'lastName':'Lorenz',
'preferredFullName':'Sharon Lorenz','+'
'enrol':'S011',
'region':'indian',
'phoneNumber':'408-1111111',
'emailAddress''+':'[email protected]'
},
{
'stdId':'003',
'course':'Btech','+'
'firstName':'Brittany',
'lastName':'Hart',
'preferredFullName':'Brittany Hart',
''+'enrol':'S012',
'region':'indian',
'phoneNumber':'408-2222222',
'emailAddress':'[email protected]'
}
]
}'; try{ // use ObjectMapper for mapping JSON to Student Students students = mapper.readValue(stdString, Students.class); // print students System.out.println(students); // serialize students into json string stdString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(students); System.out.println(stdString); }catch (JsonParseException e) { e.printStackTrace(); }catch (JsonMappingException e) { e.printStackTrace(); }catch (IOException e) { e.printStackTrace(); } } } //create Students class class Students { public List students; // getter and setter public List getStudent() { return students; } public void setStudent(List students) { this.students = students; } } class Student { // declare variables private String stdId; private String course; private String firstName; private String lastName; private String preferredFullName; private String enrol; private String region; private String phoneNumber; private String emailAddress; public Student(){ } // getter/setters for all variables public String getStdId() { return stdId; } public void setStdId(String stdId) { this.stdId = stdId; } public String getCourse() { return course; } public void getCourse(String course) { this.course = course; } public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } public String getPreferredFullName() { return preferredFullName; } public void setPreferredFullName(String preferredFullName) { this.preferredFullName = preferredFullName; } public String getEnrol() { return enrol; } public void setEnrol(String enrol) { this.enrol = enrol; } public String getRegion() { return region; } public void setRegion(String region) { this.region = region; } public String getPhoneNumber() { return phoneNumber; } public void setPhoneNumber(String phoneNumber) { this.phoneNumber = phoneNumber; } public String getEmailAddress() { return emailAddress; } public void setEmailAddress(String emailAddress) { this.emailAddress = emailAddress; } public String toString(){ return 'Employee [ Student Id: '+stdId+', Course: '+course+ '' + ', First Name: '+firstName+ ', Last Name: '+lastName+ '' + ', Name: '+preferredFullName+ ', Enrol No: '+enrol+ '' + ', Region: '+region+ ', Phone Number: '+phoneNumber+ '' + ', Email Address: '+emailAddress+ ' ]'; } }  

Ieșire:

Clasa ObjectMapper din Jackson