ObjectMapper klasse i Jackson

ObjectMapper klasse i Jackson

ObjectMapper er en af ​​de vigtigste klasser, der findes i Jackson bibliotek. Det bruges til at læse og skrive JSON-data. Den er ansvarlig for at læse data fra eller til POJO-fil og til og fra en JSON-træmodel.

Der er følgende karakteristika for ObjectMapper-klassen:

  1. Den understøtter avancerede koncepter som f.eks Polymorfi og Genkendelse af objekter.
  2. Det er meget tilpasseligt at arbejde med forskellige stilarter af JSON-indhold.
  3. Det fungerer som en fabrik for forskud Objektlæser og ObjectWriter klasser.

ObjectMapper-klassen erklæres på følgende måde:

 public class ObjectMapper extends ObjectCodec implements Versioned, Serializable  

Indlejrede klasser

Følgende tabel definerer de klasser, der udvider ObjectMapper-klassen eller, kan sige, indlejrede klasser af ObjectMapper-klassen.

klasse Beskrivelse
DefaultTypeResolverBuilder Det er en tilpasset TypeResolverBuilder klasse, der bruges til at få typeopløsningsbyggere, som vi kan bruge med 'standardindtastning'.
DefaultTyping For at specificere typen af ​​typer, bruges optællinger med enableDefaultTyping() metoden.

Lad os nu forstå felterne, konstruktørerne og metoderne i ObjectMapper-klassen:

Felter i ObjectMapper-klassen

protected DefaultDeserializationContext _deserializationContext

Det er et blueprint kontekstobjekt, der er gemt for at tillade brugerdefinerede underklasser.

protected DeserializationConfig _deserializationConfig

Det er et konfigurationsobjekt, som bruges til at definere de grundlæggende globale indstillinger for de-serialiseringsprocessen.

beskyttet JsonFactory jsonFactory

For at oprette en instans af JsonParser og JsonGenerator, bruges JsonFactory.

beskyttede InjectableValues ​​_injectableValues

Det er en udbyder, der bruges til at injicere værdierne i de-serialiserede POJO'er.

beskyttede ConfigOverrides _propertyOverrides

Den bruges til at få adgang til de aktuelt aktive per-type konfigurationstilsidesættelser.

beskyttet SimpleMixInResolver _mixIns

Det er en kortlægning, der bruges til at definere en måde at anvende blandede annoteringer på. Kortlægningen foregår på følgende måde:

Nøgle: Skriv for at modtage yderligere anmærkninger.

Værdi: Type, der har anmærkninger til at 'blande i'

beskyttet Sæt _registredModuleTypes

Det er et sæt, der definerer det sæt af modultyper, der er blevet registreret.

beskyttet SerializationConfig _serializationConfig

Det er også et konfigurationsobjekt, der bruges til at definere de grundlæggende globale indstillinger for serialiseringsprocessen.

beskyttet ConcurrentHashMap _rootDeserializers

Det er et kort, der bruges til at holde styr på de-serializere på rodniveau. Det er et kort på hovedniveau.

beskyttet SerializerFactory _serializerFactory

Det er en fabrik, der bruges til at konstruere serializers.

beskyttet SubtypeResolver _subtypeResolver

Det bruges til at registrere undertyper og til at løse dem for super/undertyper efter behov.

beskyttet TypeFactory _typeFactory

Det er en fabrik, der bruges til at oprette JavaType-forekomster. De er nødvendige for at tillade moduler at tilføje mere brugerdefineret type håndtering.

protected DefaultSerializerProvider _serializerProvider

Det er et objekt, der er ansvarlig for at administrere adgangen til serializers, der bruges til serialisering.

beskyttede statiske BaseSettings DEFAULT_BASE

Det er basisindstillinger, der inkluderer standarder, der bruges til alle ObjectMapper-forekomster.

Konstruktører af ObjectMapper-klassen

Der er følgende konstruktører af ObjectMapper-klassen:

Konstruktør Beskrivelse
ObjectMapper() Det er en standardkonstruktør, der bruges til at konstruere en instans, der bruger standard JsonFactory, SerializerProvider, og BeanSerializerFactory.
ObjectMapper (JsonFactory factory) Det bruges til at konstruere en instans, der bruger den givne JsonFactory. Den givne JsonFactory bruges til at konstruere JsonParsers og/eller JsonGenerators.
ObjectMapper (JsonFactory factory, SerializerProvider provider1, DeserializerProvider provider2) Det bruges til at konstruere en instans, der bruger det givne JsonFactory, SerializerProvider, og DeserializerProvider. Den givne JsonFactory bruges til at konstruere JsonParsers og/eller JsonGenerators.
beskyttet ObjectMapper (ObjectMapper mapper) Det er en kopi-konstruktør til at understøtte copy().

ObjectMapper-klassemetoder

ObjectMapper-klassen definerer følgende metoder:

Metode Returtype Beskrivelse
_checkInvalidCopy(Class exp) ugyldig Den bruges til at kontrollere ugyldig kopi.
_configAndWriteValue(JsonGenerator g, objektværdi) ugyldig Den bruges til at konfigurere generatoren, når det er nødvendigt, og derefter udføre skrivefunktionaliteten.
_convert(Object fromValue, JavaType toValueType) Objekt Det bruges til at få den faktiske konverteringsimplementering. Her bruges læse- og skrivemetoder ikke til koden.
_initForReading(JsonParser p) JsonToken Det bruges til at sikre, om den givne parser er klar til at læse indhold til databinding eller ej.
_findRootDeserializer(DeserializationContext ctxt, JavaType valueType) JsonDeserializer For den beståede rodniveauværdi, hvis vi ønsker at finde de-serializeren, bruger vi denne metode.
_newReader(DeserializationConfig config)
Lignende metode:
  1. _newReader(DeserializationConfig config, JavaType valueType, Object valueToUpdate, FormatSchema-skema, InjectableValues ​​injectableValues)
Objektlæser Det er en fabriksmetode, dvs. brugt til at få ObjectReader-forekomsterne af den rigtige undertype. For at bruge denne metode er det nødvendigt, at underklasserne skal tilsidesætte.
_newWriter(SerializationConfig config)
Lignende metoder:
  1. _newWriter(SerializationConfig config, FormatSchema-skema)
  2. _newWriter(SerializationConfig config, JavaType rootType, PrettyPrinter pp)
ObjectWriter Det er en fabriksmetode, dvs. den bruges til at få ObjectWriter-forekomsterne af den rigtige undertype. For at bruge denne metode er det nødvendigt, at underklasserne skal tilsidesætte.
_readValue(DeserializationConfig cfg, JsonParser p, JavaType valueType) Objekt Det bruges til at få et objekt, der definerer værdilæsning og bindingsoperation.
_serializerProvider(SerializationConfig config) DefaultSerializerProvider Det er en tilsidesættelig hjælpemetode, der bruges til at konstruere SerializerProvider.
acceptJsonFormatVisitor(Klassetype, JsonFormatVisitorWrapper besøgende)
Lignende metode:
  1. acceptJsonFormatVisitor(JavaType type, JsonFormatVisitorWrapper besøgende)
ugyldig
ugyldig
Hvis vi ønsker at besøge typehierarkiet af en bestemt type med den angivne besøgende, bruger vi denne metode.
addHandler(DeserializationProblemHandler h) ObjectMapper For at håndtere specificerede problemer under de-serialisering, bruger vi en specificeret DeserializationProblemHandler, og for at tilføje handleren bruger vi denne metode.
addMixIn(Class target, Class mixinSource) ObjectMapper For at bruge mix-in annotering til specificeret augmenting klasse eller grænseflade, bruger vi denne metode til at tilføje den.
canDeserialize (JavaType-type) Boolean Det bruges til at kontrollere, om kortlæggeren kan de-serialisere et objekt af en specificeret type eller ej.
canDeserialize (JavaType-type, AtomicReference-årsag) Boolean Det ligner den tidligere metode. Den eneste forskel er, at den kan returnere den smidbare, der blev smidt på tidspunktet for konstruktionen af ​​serializeren. Den smidbare kan bruges til at finde ud af det faktiske problem.
canSerialize (klassetype) Boolean Det bruges til at kontrollere, om mapperen kan serialisere et objekt af en specificeret type eller ej.
canSerialize(Klassetype, AtomicReference-årsag) Boolean Det ligner den tidligere metode. Den eneste forskel er, at den kan returnere den smidbare, der blev smidt på tidspunktet for konstruktionen af ​​serializeren. Den smidbare kan bruges til at finde ud af det faktiske problem.
clearProblemHandlers() ObjectMapper Det er en af ​​de metoder, der bruges til at fjerne alle DeserializationProblemHandlers forekomster fra mapperen, som er registreret.
konfigurer (DeserializationFeature f, boolesk tilstand)
lignende metoder:
  1. configure(JsonGenerator.Feature f, boolesk tilstand)
  2. configure(JsonParser.Feature f, boolesk tilstand)
  3. configure(MapperFeature f, boolesk tilstand)
  4. konfigurere (SerializationFeature f, boolesk tilstand)
ObjectMapper Det bruges til at ændre tilstanden af ​​en tænd/sluk-de-serialisering, Json Generator, JsonParser, Mapper eller Serialization-funktion for objektmapperen, generatorforekomster, parserforekomster, mapperforekomster eller objektmapper.
constructType(Type t) JavaType Hvis vi ønsker at konstruere JavaType ud af en given type uden eksplicit kontekst, bruger vi denne metode.
convertValue(Object fromValue, Class toValueType)
Lignende metoder:
  1. convertValue(Object fromValue, JavaType toValueType)
T Hvis vi ønsker at udføre en to-trins konvertering af en given værdi til en instans af en given værditype, bruger vi converValue() metoden.
createArrayNode() ArrayNode Det bruges til at oprette ArrayNode.
defaultClassIntrospector() KlasseIntrospektør Hvis vi vil bruge standard ClassIntrospector, bruger vi denne tilsidesættelige hjælpemetode til at konstruere den.
deaktiver (DeserializationFeature-funktion)
Lignende metoder:
  1. deaktiver (DeserializationFeature først, DeserializationFeature... f)
  2. deaktiver (JsonGenerator.Feature... funktioner)
  3. deaktiver (JsonParser.Feature... funktioner)
  4. deaktiver (MapperFeature... f)
  5. deaktiver (Serialiseringsfunktion f)
  6. deaktiver (SerializationFeature first, SerializationFeature... f)
ObjectMapper Det bruges til at deaktivere givet DeserializationConfig, JsonGenerator.Features for parser-forekomster, JsonParser.Features for parser-forekomster af objektmapperen.
disableDefaultTyping() ObjectMapper Mange gange er vi nødt til at deaktivere den automatiske medtagelse af typeoplysninger, og til dette formål bruger vi denne metode.
aktivere (DeserializationFeature-funktion)
  1. aktivere (DeserializationFeature først, DeserializationFeature... f)
  2. enable(JsonGenerator.Feature... features)
    enable(JsonParser.Feature... features)
  3. enable(MapperFeature... f)
  4. aktivere (Serialiseringsfunktion f)
  5. enable (SerializationFeature first, SerializationFeature... f)
ObjectMapper Den bruges til at aktivere den givne DeserializationConfig, JsonGenerator.Features for parser-forekomster, JsonParser.Features for parser-forekomster af objektmapperen.
enableDefaultTyping()
Lignende metoder:
  1. enableDefaultTyping(ObjectMapper.DefaultTyping dti)
  2. enableDefaultTyping(ObjectMapper.DefaultTyping anvendelighed, JsonTypeInfo.As includeAs)
  3. enableDefaultTypingAsProperty(ObjectMapper.DefaultTyping applicability, String propertyName)
ObjectMapper For at bruge automatisk inkludering af typeinformation til de-serialisering af polymorfe typer., bruger vi denne metode til at aktivere den.
findAndRegisterModules() ObjectMapper Det ligner mapper.registerModules(mapper.findModules())-metoden.
findModules()
Lignende metoder:
  1. findModules(ClassLoader classLoader)
Liste Det bruges til at finde tilgængelige metoder. Metoden bruger JDK ServiceLoader-faciliteten med modulleveret SPI.
getDateFormat() Datoformat Det bruges til at få formatet på datoen.
getDeserializationConfig() DeserializationConfig Det bruges til at hente det delte standard DeserializationConfig-objekt. Det returnerede objekt definerer konfigurationsindstillingerne for de-serialisering.
getDeserializationContext() Deserialiseringskontekst Det bruges til at få den aktuelle DeserializationContext.
getFactory() JsonFactory Hvis mapperen skal konstruere en Json-parser og generatorer, har den brug for json factory, og for at få det bruger vi metoden getFactory().
getInjectableValues() Injicerbare værdier Det bruges til at få injicerbare værdier.
getJsonFactory() JsonFactory Det er en forældet metode til at få Json-fabrikken.
getNodeFactory() JsonNodeFactory Det bruges til at hente JsonNodeFactory, der bruges af kortlæggeren på tidspunktet for direkte konstruktion af root JsonNode-forekomster til træer.
getPropertyNamingStrategy() Ejendomsnavngivningsstrategi Som navnet antyder, er det vant til ejendommens navnestrategi.
getSerializationConfig() SerializationConfig Det bruges til at hente det delte standard SerializationConfig-objekt. Det returnerede objekt definerer konfigurationsindstillingerne for serialisering.
getSerializerFactory() SerializerFactory Det bruges til at få den nuværende SerializerFactory.
getSerializerProvider() SerializerProvider Det er en accessor til fabrikken, som bruges til at oprette instanser ved at kalde DefaultSerializerProvider.createInstance(SerializationConfig, SerializerFactory).
getSerializerProviderInstance() SerializerProvider Det er en accessor, der bruges til at konstruere og returnere en instans af SerializerProvider, som vi kan bruge til at få adgang til serializers.
getSubtypeResolver() SubtypeResolver Den bruges til at få adgang til den undertypeopløser, der er i brug.
getTypeFactory() TypeFactory Det er en accessor, der bruges til at få en forekomst af den aktuelt konfigurerede TypeFactory.
getVisibilityChecker() VisibilityChecker Den bruges til at få adgang til den aktuelt konfigurerede synlighedskontrol.
isEnabled(DeserializationFeature f)
Lignende metoder:
  1. isEnabled(JsonFactory.Feature f)
  2. isEnabled(JsonGenerator.Funktion f)
  3. isEnabled(JsonParser.Feature f)
  4. isEnabled(MapperFeature f)
  5. isEnabled (Serialiseringsfunktion f)
Boolean Metoden isEnable() og dens variationer bruges til at kontrollere, om en given deserialiseringsspecifik, JsonFactory, JsonGenerator, JsonParser, Mapper eller Serialiseringsfunktion er aktiveret eller ej.
mixInCount() int Det bruges til at få tællingen af ​​mixIn.
læser()
Lignende metoder:
  1. læser(Base64Variant defaultBase64)
  2. læser (klassetype)
  3. læser (ContextAttributes attrs)
  4. læser (DeserializationFeature-funktion)
  5. læser (DeserializationFeature først, DeserializationFeature... andet)
  6. læser (FormatSchema-skema)
  7. læser(InjectableValues ​​injectableValues)
  8. læser (JavaType type)
  9. læser(JsonNodeFactory f)
  10. læser (TypeReference type)
Objektlæser Reader()-metoden og dens variationer er fabriksmetoderne, der bruges til at konstruere en instans af ObjectReader. Baseret på kravet kan vi videregive Base64-kodningsvarianten for Base64-kodede binære data, standardattributter, aktiverede funktioner, injicerbare værdier, JsonNodeFactory til at konstruere JSON-træer.
læserFor(klassetype) Objektlæser Det er en fabriksmetode, der bruges til at konstruere ObjectReader, der tillader læse- eller opdateringsoperationer for forekomster af den angivne type.
readerFor (JavaType type) Objektlæser Det er en fabriksmetode, der bruges til at konstruere ObjectReader, der tillader læse- eller opdateringshandlinger for forekomster af specificeret JavaType.
readerFor(TypeReference type) Objektlæser Det er en fabriksmetode, der bruges til at konstruere ObjectReader, der tillader læse- eller opdateringsoperationer for forekomster af givet TypeReference.
readerForUpdating(Object valueToUpdate) Objektlæser Det er en fabriksmetode, der bruges til at konstruere ObjectReader, der tillader opdateringsoperationer for det givne objekt.
readerWithView(Klassevisning) Objektlæser Det er en fabriksmetode, der bruges til at konstruere ObjectReader, hvilket tillader
de-serialisering af objekter med givet JSON View.
readTree(byte[] indhold)
  1. readTree (fil fil)
  2. readTree(InputStream in)
  3. readTree(JsonParser p)
  4. readTree(Reader r)
  5. readTree (strengindhold)
  6. readTree (URL-kilde)
JsonNode
ELLER
T
ReadTree() og dets variationer bruges til at de-serialisere JSON-indholdet som et træ udtrykt ved hjælp af et sæt JsonNode-instanser.
readValue(byte[] src, Class valueType)
Lignende metoder
  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(File src, Class valueType)
  6. readValue(DataInput src, JavaType valueType)
  7. readValue(File src, JavaType valueType)
  8. readValue(File 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(String content, TypeReference valueTypeRef)
  21. readValue(Reader src, Class valueType)
  22. readValue(String content, Class valueType)
  23. readValue(String content, JavaType valueType)
  24. readValue(URL src, TypeReference valueTypeRef)readValue(URL src, Class valueType)
  25. readValue(URL src, JavaType valueType)
T
ELLER
MappingIterator
ReadValue() og dens variationer bruges til at afserialisere JSON-indhold
  1. Fra den givne fil til en given Java-type, til en ikke-containertype eller til en Java-typereference, hvortil den sendes som et argument.
  2. Fra givet JSON-indhold til String.
  3. Fra given ressource til given Java-type.
Variationer anvendes baseret på forskellige krav.
readValues(JsonParser p, Class valueType)
Lignende metoder:
  1. readValues(JsonParser p, JavaType valueType)
  2. readValues(JsonParser p, ResolvedType valueType)
  3. readValues(JsonParser p, TypeReferencevalueTypeRef)
MappingIterator ReadValues() og dens variationer bruges til at læse sekvensen af ​​objekter fra parserstrømmen.
registerModule(modulmodul)
Lignende metoder:
  1. registerModules (Iterable moduler)
  2. registerModules(Module... moduler)
ObjectMapper registerModule() og dets variationer bruges til at registrere et modul, der har evnen til at udvide funktionaliteten leveret af mapperen.
registerSubtypes(NamedType... typer) ugyldig Den bruges til at registrere den givne klasse som en undertype. Ved at gøre det kan den typenavnebaserede opløsning linke supertyper til undertyper.
setAnnotationIntrospector(AnnotationIntrospector ai) ObjectMapper Det bruges til at indstille AnnotationIntrospector, som bruges af mapper-instansen til både serialisering og de-serialisering.
setAnnotationIntrospectors(AnnotationIntrospector serializerAI, AnnotationIntrospector deserializerAI) ObjectMapper Det bruges til at ændre den forekomst af AnnotationIntrospector, der bruges af den aktuelle mapperforekomst til serialisering og de-serialisering.
setBase64Variant(Base64Variant v) ObjectMapper Den bruges til at konfigurere standard Base64Variant, som vil blive brugt af byte[] serializers og de-serializers.
setConfig(DeserializationConfig config) ObjectMapper For at udføre tilsidesættelsen af ​​det underliggende DeserializationConfig-objekt bruger vi denne metode.
setConfig(SerializationConfig config) ObjectMapper For at udføre tilsidesættelsen af ​​det underliggende SerializationConfig-objekt med serialiseringsspecifikke konfigurationsindstillinger, bruger vi denne metode.
setDateFormat(DatoFormat datoFormat) ObjectMapper Det bruges til at konfigurere standard DateFormat til at bruge det på tidspunktet for serialisering af tidsværdier som Strings eller de-serialisering fra JSON Strings.
setDefaultPrettyPrinter(PrettyPrinter pp) ObjectMapper Den bruges til at specificere PrettyPrinter for at bruge den, når 'default pretty-printing' er aktiveret.
setDefaultTyping(TypeResolverBuilder-typer) ObjectMapper Det bruges til at aktivere automatisk inkludering af typeoplysninger.
setHandlerInstantiator(HandlerInstantiator hej) Objekt Det bruges til at konfigurere HandlerInstantiator til at bruge til at oprette forekomster af handlere.
setFilterProvider(FilterProvider filterProvider) ObjectMapper Den bruges til at konfigurere den aktuelle mapper til at bruge specificeret FilterProvider til at kortlægge filter-id'er til faktiske filterforekomster.
setInjectableValues(InjectableValues ​​injectableValues) ObjectMapper Det bruges til at konfigurere InjectableValues, som bruges til at finde værdier, der skal indsprøjtes.
setLocale(Local l) ObjectMapper Det bruges til at tilsidesætte den standardlokalitet, der skal bruges til formatering.
setMixInResolver(ClassIntrospector.MixInResolver-opløsning) ObjectMapper Vi bruger denne metode til at specificere den givne resolver for at lokalisere blandingsklasser, der skal bruges, og tilsidesætte direkte tilføjede tilknytninger.
setMixInAnnotations(Kort sourceMixins) ugyldig Det er en afskrevet metode til at definere mix-in annotering.
setNodeFactory(JsonNodeFactory f) ObjectMapper Det bruges til at specificere JsonNodeFactory, der skal bruges til at konstruere trænoder på rodniveau.
setMixIns(Kort sourceMixins) ObjectMapper Det bruges til at definere de blandede annoteringer, der skal bruges til at udvide annoteringer, som bearbejdelige klasser har.
setPropertyInclusion(JsonInclude.Value incl) ObjectMapper Den bruges til at indstille standard POJO-egenskabsinkluderingsstrategi for serialisering.
setPropertyNamingStrategy(PropertyNamingStrategy s) ObjectMapper Det bruges til at indstille den brugerdefinerede egenskabsnavngivningsstrategi, der skal bruges.
setSerializerFactory(SerializerFactory f) ObjectMapper Den bruges til at indstille den specifikke SerializerFactory, der skal bruges til at konstruere (bean) serializers.
setSerializerProvider(DefaultSerializerProvider p) ObjectMapper Det bruges til at indstille 'blueprint' SerializerProvider-forekomsten til at bruge den som base til faktiske udbyderforekomster, der skal bruges til at håndtere caching af JsonSerializer-forekomster.
sætSubtypeResolver(SubtypeResolver str) ObjectMapper Den bruges til at indstille den brugerdefinerede undertypeopløser, der skal bruges.
setTimeZone(TimeZone tz) ObjectMapper Den bruges til at tilsidesætte den standardtidszone, der skal bruges til formatering.
setTypeFactory(TypeFactory f) ObjectMapper Det bruges til at tilsidesætte TypeFactory-forekomsten, som bruges af den aktuelle mapper.
setVisibility(PropertyAccessor forMethod, JsonAutoDetect.Visibility synlighed)
  1. setVisibility(VisibilityChecker vc)
  2. setVisibilityChecker(VisibilityChecker vc)
ObjectMapper SetVisibility() og dens variation bruges til at indstille den aktuelt konfigurerede VisibilityChecker. Den returnerede ObjectMapper-instans bruges til at kontrollere, om det givne egenskabselement kan detekteres automatisk eller ej.
treeAsTokens(TreeNode n) JsonParser Det bruges til at konstruere en JsonParser ud fra JSON-trærepræsentation.
treeToValue(TreeNode n, Class valueType) T Det bruges til at binde de data, som JSON-træet indeholder, til en bestemt værditype.
version() Version Det bruges til at få versionsoplysningerne gemt i og læst fra krukken, der indeholder denne klasse.
forfatter()
  1. writer(Base64Variant defaultBase64)
  2. forfatter (CharacterEscapes undslipper)
  3. writer(ContextAttributes attrs)
  4. writer(DatoFormat df)
  5. forfatter (FilterProvider filterProvider)
  6. writer(FormatSchema-skema)
  7. forfatter (PrettyPrinter pp)
  8. forfatter (SerializationFeature-funktion)
  9. writer (SerializationFeature først, SerializationFeature... andet)
ObjectWriter Write() og dens variationer bruges til at konstruere ObjectWriter med standardindstillinger, givet Base64-kodningsvariant for Base64-kodede binære data, tegn-escape-detaljer for output, standardattributter, DateFormat, filterudbyder, skemaobjekt til JsonGenerator brugt til at skrive indhold, smuk printer til indrykning, eller funktion aktiveret.
writerFor(Class rootType) - ObjectWriter Den bruges til at konstruere ObjectWriter til at serialisere objekterne ved hjælp af en specificeret rodtype i stedet for den faktiske runtime-værdi.
writerFor(JavaType rootType) ObjectWriter Den bruges til at konstruere ObjectWriter til at serialisere objekterne ved hjælp af en specificeret rodtype i stedet for den faktiske runtime-værdi.
writerFor(TypeReference rootType) ObjectWriter Den bruges til at konstruere ObjectWriter til at serialisere objekterne ved hjælp af en specificeret rodtype i stedet for den faktiske runtime-værdi.
writerWithDefaultPrettyPrinter() ObjectWriter Det er en fabriksmetode, der bruges til at konstruere ObjectWriter til at serialisere objekterne ved hjælp af den smukke standardprinter til indrykning.
writerWithType(Class rootType)
  1. writerWithType(Class rootType)
  2. writerWithType(TypeReference rootType)
ObjectWriter Disse metoder afskrives, og i stedet for dem bruger vi writerFor(TypeReference) metoden.
writerWithView(Class serializationView) ObjectWriter Det er en fabriksmetode, der bruges til at konstruere ObjectWriter til at serialisere objekter ved hjælp af specificeret JSON View.
writeTree(JsonGenerator jgen, JsonNode rootNode) ugyldig Det bruges til at serialisere det leverede JSON-træ ved at bruge den givne JsonGenerator.
skriveVærdi(Fil resultatFil, Objektværdi) ugyldig Den bruges til at serialisere Java-værdi som JSON-output og skrive den til den givne fil.
skriveVærdi(JsonGenerator g, Objektværdi). ugyldig Det bruges til at serialisere Java-værdier som JSON-output ved at bruge den givne JsonGenerator.
skriveVærdi(OutputStream ud, Objektværdi) ugyldig Det bruges til at serialisere Java-værdi som JSON-output ved at bruge den givne OutputStream.
skriveVærdi(Writer w, Objektværdi) ugyldig Det bruges til at serialisere Java-værdier som JSON-output ved at bruge den givne Forfatter.
writeValueAsBytes(Objektværdi) byte[] Det bruges til at serialisere Java-værdier som et byte-array.
writeValueAsString(Objektværdi) Snor Det bruges til at serialisere Java-værdier som en streng.

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+ ' ]'; } }  

Produktion:

ObjectMapper klasse i Jackson