ObjectMapper-klassen i Jackson

ObjectMapper-klassen i Jackson

ObjectMapper er en av de viktigste klassene som finnes i Jackson bibliotek. Den brukes til å lese og skrive JSON-data. Den er ansvarlig for å lese data fra eller til POJO-fil og til og fra en JSON-tremodell.

Det er følgende egenskaper for ObjectMapper-klassen:

  1. Den støtter avanserte konsepter som f.eks Polymorfisme og Gjenkjenning av objekter.
  2. Det er veldig tilpassbart å jobbe med forskjellige stiler av JSON-innhold.
  3. Det fungerer som en fabrikk for forhånd Objektleser og ObjectWriter klasser.

ObjectMapper-klassen er deklarert på følgende måte:

 public class ObjectMapper extends ObjectCodec implements Versioned, Serializable  

Nestede klasser

Følgende tabell definerer klassene som utvider ObjectMapper-klassen eller, kan si, nestede klasser av ObjectMapper-klassen.

Klasse Beskrivelse
DefaultTypeResolverBuilder Det er en tilpasset TypeResolverBuilder klasse som brukes til å få typeoppløsere, som vi kan bruke med 'standard skriving'.
DefaultTyping For å spesifisere typen typer, brukes opptellinger med enableDefaultTyping()-metoden.

La oss nå forstå feltene, konstruktørene og metodene til ObjectMapper-klassen:

Felt i ObjectMapper-klassen

protected DefaultDeserializationContext _deserializationContext

Det er et blåkopi-kontekstobjekt som er lagret for å tillate tilpassede underklasser.

protected DeserializationConfig _deserializationConfig

Det er et konfigurasjonsobjekt som brukes til å definere de grunnleggende globale innstillingene for de-serialiseringsprosessen.

beskyttet JsonFactory jsonFactory

For å lage en forekomst av JsonParser og JsonGenerator, brukes JsonFactory.

beskyttede InjectableValues ​​_injectableValues

Det er en leverandør som brukes til å injisere verdiene i de-serialiserte POJO-er.

beskyttet ConfigOverrides _propertyOverrides

Den brukes for å få tilgang til de aktive per-type konfigurasjonsoverstyringene.

beskyttet SimpleMixInResolver _mixIns

Det er en kartlegging som brukes til å definere en måte å bruke innblandingskommentarer på. Kartlegging gjøres på følgende måte:

Nøkkel: Skriv for å motta flere merknader.

Verdi: Type som har merknader å 'blande inn'

beskyttet Sett _registeredModuleTypes

Det er et sett som definerer settet med modultyper som er registrert.

beskyttet SerializationConfig _serializationConfig

Det er også et konfigurasjonsobjekt som brukes til å definere de grunnleggende globale innstillingene for serialiseringsprosessen.

beskyttet ConcurrentHashMap _rootDeserializers

Det er et kart som brukes til å holde styr på de-serializers på rotnivå. Det er et kart på hovednivå.

beskyttet SerializerFactory _serializerFactory

Det er en fabrikk som brukes til å konstruere serializers.

beskyttet SubtypeResolver _subtypeResolver

Den brukes til å registrere undertyper og løse dem for super/undertyper etter behov.

beskyttet TypeFactory _typeFactory

Det er en fabrikk som brukes til å lage JavaType-forekomster. De er nødvendige for å tillate moduler å legge til mer tilpasset type håndtering.

protected DefaultSerializerProvider _serializerProvider

Det er et objekt som er ansvarlig for å administrere tilgangen til serialiseringsprogrammer som brukes til serialisering.

beskyttet statisk BaseSettings DEFAULT_BASE

Det er basisinnstillinger som inkluderer standarder som brukes for alle ObjectMapper-forekomster.

Konstruktører av ObjectMapper-klassen

Det er følgende konstruktører av ObjectMapper-klassen:

Konstruktør Beskrivelse
ObjectMapper() Det er en standardkonstruktør som brukes til å konstruere en forekomst som bruker standard JsonFactory, SerializerProvider, og BeanSerializerFactory.
ObjectMapper (JsonFactory factory) Den brukes til å konstruere en instans som bruker den gitte JsonFactory. Den gitte JsonFactory brukes til å konstruere JsonParsers og/eller JsonGenerators.
ObjectMapper (JsonFactory factory, SerializerProvider provider1, DeserializerProvider provider2) Den brukes til å konstruere en instans som bruker det gitte JsonFactory, SerializerProvider, og DeserializerProvider. Den gitte JsonFactory brukes til å konstruere JsonParsers og/eller JsonGenerators.
beskyttet ObjectMapper (ObjectMapper mapper) Det er en kopi-konstruktør for å støtte copy().

ObjectMapper klassemetoder

ObjectMapper-klassen definerer følgende metoder:

Metode Returtype Beskrivelse
_checkInvalidCopy(Class exp) tomrom Den brukes til å kontrollere ugyldig kopi.
_configAndWriteValue(JsonGenerator g, objektverdi) tomrom Den brukes til å konfigurere generatoren når det er nødvendig og deretter utføre skrivefunksjonaliteten.
_convert(Object fromValue, JavaType toValueType) Gjenstand Den brukes til å få den faktiske konverteringsimplementeringen. Her brukes ikke lese- og skrivemetoder for koden.
_initForReading(JsonParser p) JsonToken Den brukes for å sikre om den gitte parseren er klar til å lese innhold for databinding eller ikke.
_findRootDeserializer(DeserializationContext ctxt, JavaType valueType) JsonDeserializer For den beståtte rotnivåverdien, hvis vi ønsker å finne de-serializeren, bruker vi denne metoden.
_newReader(DeserializationConfig config)
Lignende metode:
  1. _newReader(DeserializationConfig config, JavaType valueType, Object valueToUpdate, FormatSchema-skjema, InjectableValues ​​injectableValues)
Objektleser Det er en fabrikkmetode, dvs. brukt for å få ObjectReader-forekomster av riktig undertype. For å bruke denne metoden er det nødvendig at underklassene må overstyre.
_newWriter(SerializationConfig config)
Lignende metoder:
  1. _newWriter(SerializationConfig config, FormatSchema-skjema)
  2. _newWriter(SerializationConfig config, JavaType rootType, PrettyPrinter pp)
ObjectWriter Det er en fabrikkmetode, dvs. brukt for å få ObjectWriter-forekomster av riktig undertype. For å bruke denne metoden er det nødvendig at underklassene må overstyre.
_readValue(DeserializationConfig cfg, JsonParser p, JavaType valueType) Gjenstand Den brukes til å få et objekt som definerer verdilesing og bindingsoperasjon.
_serializerProvider(SerializationConfig config) DefaultSerializerProvider Det er en overstyrbar hjelpemetode som brukes til å konstruere SerializerProvider.
acceptJsonFormatVisitor(Klassetype, JsonFormatVisitorWrapper besøkende)
Lignende metode:
  1. acceptJsonFormatVisitor(JavaType type, JsonFormatVisitorWrapper besøkende)
tomrom
tomrom
Hvis vi ønsker å besøke typehierarkiet for en bestemt type med den angitte besøkende, bruker vi denne metoden.
addHandler(DeserializationProblemHandler h) ObjectMapper For å håndtere spesifiserte problemer under deserialisering bruker vi en spesifisert DeserializationProblemHandler, og for å legge til behandleren bruker vi denne metoden.
addMixIn(Klassemål, KlasseblandingKilde) ObjectMapper For å bruke innblandingsannotering for spesifisert utvidelsesklasse eller grensesnitt, bruker vi denne metoden for å legge den til.
canDeserialize (JavaType-type) boolsk Den brukes til å sjekke om kartleggeren kan de-serialisere et objekt av en spesifisert type eller ikke.
canDeserialize (JavaType-type, AtomicReference-årsak) boolsk Det ligner på den forrige metoden. Den eneste forskjellen er at den kan returnere den kastebare som ble kastet på tidspunktet for konstruksjonen av serializeren. Den kastbare kan brukes til å finne ut av det faktiske problemet.
canSerialize (klassetype) boolsk Den brukes til å sjekke om kartleggeren kan serialisere et objekt av en spesifisert type eller ikke.
canSerialize (Klassetype, AtomicReference-årsak) boolsk Det ligner på den forrige metoden. Den eneste forskjellen er at den kan returnere den kastebare som ble kastet på tidspunktet for konstruksjonen av serializeren. Den kastbare kan brukes til å finne ut av det faktiske problemet.
clearProblemHandlers() ObjectMapper Det er en av metodene som brukes til å fjerne alle DeserializationProblemHandlers-forekomster fra kartleggeren som er registrert.
konfigurer (DeserializationFeature f, boolsk tilstand)
lignende metoder:
  1. configure(JsonGenerator.Feature f, boolsk tilstand)
  2. configure(JsonParser.Feature f, boolsk tilstand)
  3. konfigurer (MapperFeature f, boolsk tilstand)
  4. konfigurer (SerializationFeature f, boolsk tilstand)
ObjectMapper Den brukes til å endre tilstanden til en på/av de-serialisering, Json Generator, JsonParser, Mapper eller Serialization-funksjon for objektmapper, generatorforekomster, parserforekomster, mapperforekomst eller objektkartlegging.
constructType(Type t) JavaType Hvis vi ønsker å konstruere JavaType ut av en gitt type uten eksplisitt kontekst, bruker vi denne metoden.
convertValue(Object fromValue, Class toValueType)
Lignende metoder:
  1. convertValue(Object fromValue, JavaType toValueType)
T Hvis vi ønsker å utføre en to-trinns konvertering av en gitt verdi til en forekomst av en gitt verditype, bruker vi converValue() metoden.
createArrayNode() ArrayNode Den brukes til å lage ArrayNode.
defaultClassIntrospector() KlasseIntrospektør Hvis vi vil bruke standard ClassIntrospector, bruker vi denne Overridable-hjelpemetoden for å konstruere den.
deaktiver (DeserializationFeature-funksjon)
Lignende metoder:
  1. deaktiver (DeserializationFeature først, DeserializationFeature... f)
  2. deaktiver (JsonGenerator.Feature... funksjoner)
  3. deaktiver (JsonParser.Feature... funksjoner)
  4. deaktiver (MapperFeature... f)
  5. deaktiver (Serialiseringsfunksjon f)
  6. deaktiver (SerializationFeature først, SerializationFeature... f)
ObjectMapper Den brukes til å deaktivere gitte DeserializationConfig, JsonGenerator.Features for parser-forekomster, JsonParser.Features for parser-forekomster av objektmapperen.
disableDefaultTyping() ObjectMapper Mange ganger må vi deaktivere automatisk inkludering av typeinformasjon, og for dette formålet bruker vi denne metoden.
aktiver (DeserializationFeature-funksjon)
  1. aktivere (DeserializationFeature først, DeserializationFeature... f)
  2. enable(JsonGenerator.Feature...funksjoner)
    aktivere(JsonParser.Feature... funksjoner)
  3. aktivere(MapperFeature... f)
  4. aktiver (Serialiseringsfunksjon f)
  5. aktivere (SerializationFeature først, SerializationFeature... f)
ObjectMapper Den brukes til å aktivere den gitte DeserializationConfig, JsonGenerator.Features for parserforekomster, JsonParser.Features for parserforekomster av objektmapperen.
enableDefaultTyping()
Lignende metoder:
  1. enableDefaultTyping(ObjectMapper.DefaultTyping dti)
  2. enableDefaultTyping(ObjectMapper.DefaultTyping applicability, JsonTypeInfo.As includeAs)
  3. enableDefaultTypingAsProperty(ObjectMapper.DefaultTyping applicability, String propertyName)
ObjectMapper For å bruke automatisk inkludering av typeinformasjon for de-serialisering av polymorfe typer., bruker vi denne metoden for å aktivere den.
findAndRegisterModules() ObjectMapper Den ligner på mapper.registerModules(mapper.findModules())-metoden.
findModules()
Lignende metoder:
  1. findModules(ClassLoader classLoader)
Liste Den brukes til å finne tilgjengelige metoder. Metoden bruker JDK ServiceLoader-fasiliteten med modullevert SPI.
getDateFormat() DatoFormat Den brukes til å få formatet på datoen.
getDeserializationConfig() DeserializationConfig Den brukes til å hente det delte standard DeserializationConfig-objektet. Det returnerte objektet definerer konfigurasjonsinnstillingene for de-serialisering.
getDeserializationContext() DeserializationContext Den brukes til å få gjeldende DeserializationContext.
getFactory() JsonFactory Hvis kartleggeren trenger å konstruere en Json-parser og generatorer, trenger den json factory, og for å få det bruker vi getFactory()-metoden.
getInjectableValues() Injiserbare verdier Det brukes til å få injiserbare verdier.
getJsonFactory() JsonFactory Det er en utdatert metode for å få Json-fabrikken.
getNodeFactory() JsonNodeFactory Den brukes til å hente JsonNodeFactory som brukes av kartleggeren på tidspunktet for direkte konstruksjon av root JsonNode-forekomster for trær.
getPropertyNamingStrategy() Eiendomsnavnstrategi Som navnet tilsier, er det vant til navnestrategien til eiendommen.
getSerializationConfig() SerializationConfig Den brukes til å hente det delte standard SerializationConfig-objektet. Det returnerte objektet definerer konfigurasjonsinnstillingene for serialisering.
getSerializerFactory() SerializerFactory Den brukes til å få den gjeldende SerializerFactory.
getSerializerProvider() SerializerProvider Det er en accessor for fabrikken, som brukes til å lage forekomster ved å kalle DefaultSerializerProvider.createInstance(SerializationConfig, SerializerFactory).
getSerializerProviderInstance() SerializerProvider Det er en accessor som brukes til å konstruere og returnere en forekomst av SerializerProvider, som vi kan bruke for å få tilgang til serializers.
getSubtypeResolver() SubtypeResolver Den brukes for å få tilgang til subtype-løseren som er i bruk.
getTypeFactory() TypeFactory Det er en accessor som brukes til å få en forekomst av den for øyeblikket konfigurerte TypeFactory.
getVisibilityChecker() VisibilityChecker Den brukes til å få tilgang til den gjeldende konfigurerte synlighetskontrollen.
isEnabled(DeserializationFeature f)
Lignende metoder:
  1. isEnabled(JsonFactory.Funksjon f)
  2. isEnabled(JsonGenerator.Funksjon f)
  3. isEnabled(JsonParser.Feature f)
  4. isEnabled(MapperFeature f)
  5. isEnabled(SerializationFeature f)
boolsk Metoden isEnable() og dens variasjoner brukes til å sjekke om gitte deserialiseringsspesifikke, JsonFactory, JsonGenerator, JsonParser, Mapper eller Serialization-funksjonen er aktivert eller ikke.
mixInCount() int Den brukes til å få tellingen av mixIn.
leser()
Lignende metoder:
  1. leser (Base64Variant defaultBase64)
  2. leser (klassetype)
  3. leser (ContextAttributes attrs)
  4. leser (DeserializationFeature-funksjon)
  5. leser (DeserializationFeature først, DeserializationFeature... annet)
  6. leser (FormatSchema-skjema)
  7. leser (InjectableValues ​​injectableValues)
  8. leser (JavaType-type)
  9. leser (JsonNodeFactory f)
  10. leser (TypeReference type)
Objektleser Reader()-metoden og dens variasjoner er fabrikkmetodene som brukes til å konstruere en forekomst av ObjectReader. Basert på kravet kan vi sende Base64-kodingsvarianten for Base64-kodede binære data, standardattributter, funksjoner aktivert, injiserbare verdier, JsonNodeFactory for å konstruere JSON-trær.
leserFor(Klassetype) Objektleser Det er en fabrikkmetode som brukes til å konstruere ObjectReader, som tillater lese- eller oppdateringsoperasjoner for forekomster av den angitte typen.
readerFor (JavaType-type) Objektleser Det er en fabrikkmetode som brukes til å konstruere ObjectReader, som tillater lese- eller oppdateringsoperasjoner for forekomster av spesifisert JavaType.
readerFor(TypeReference type) Objektleser Det er en fabrikkmetode som brukes til å konstruere ObjectReader, som tillater lese- eller oppdateringsoperasjoner for forekomster av gitt TypeReference.
readerForUpdating(Object valueToUpdate) Objektleser Det er en fabrikkmetode som brukes til å konstruere ObjectReader som tillater oppdateringsoperasjoner for det gitte objektet.
readerWithView(Klassevisning) Objektleser Det er en fabrikkmetode som brukes til å konstruere ObjectReader, noe som tillater
de-serialisering av objekter med gitt JSON View.
readTree(byte[] innhold)
  1. readTree (filfil)
  2. readTree(InputStream in)
  3. readTree(JsonParser p)
  4. readTree(Reader r)
  5. readTree (strenginnhold)
  6. readTree (URL-kilde)
JsonNode
ELLER
T
ReadTree() og dens variasjoner brukes til å de-serialisere JSON-innholdet som et tre uttrykt ved hjelp av et sett med JsonNode-forekomster.
readValue(byte[] src, Class valueType)
Lignende metoder
  1. readValue(byte[] src, int offset, int len, JavaType valueType)
  2. readVerdi(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. readVerdi(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. readVerdi(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. lesverdi(strenginnhold, TypereferanseverdiTypeRef)
  21. readValue(Reader src, Class valueType)
  22. lesverdi(strenginnhold, klasseverditype)
  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 varianter brukes til å de-serialisere JSON-innhold
  1. Fra den gitte filen til en gitt Java-type, til en ikke-beholdertype, eller til en Java-typereferanse som den sendes til som et argument.
  2. Fra gitt JSON-innhold til String.
  3. Fra gitt ressurs til gitt Java-type.
Variasjoner brukes basert på ulike 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 variasjoner brukes til å lese sekvensen av objekter fra parserstrømmen.
registerModule(modulmodul)
Lignende metoder:
  1. registerModules (Itererbare moduler)
  2. registerModules(Module... moduler)
ObjectMapper RegisterModule() og dens variasjoner brukes til å registrere en modul som har evnen til å utvide funksjonaliteten gitt av kartleggeren.
registerSubtypes(NamedType... typer) tomrom Den brukes til å registrere den gitte klassen som en undertype. Ved å gjøre det kan den typenavnbaserte oppløsningen koble supertyper til undertyper.
setAnnotationIntrospector(AnnotationIntrospector ai) ObjectMapper Den brukes til å angi AnnotationIntrospector, som brukes av mapper-forekomsten for både serialisering og de-serialisering.
setAnnotationIntrospectors(AnnotationIntrospector serializerAI, AnnotationIntrospector deserializerAI) ObjectMapper Den brukes til å endre forekomsten av AnnotationIntrospector som brukes av gjeldende kartleggerforekomst for serialisering og de-serialisering.
setBase64Variant(Base64Variant v) ObjectMapper Den brukes til å konfigurere standard Base64Variant som vil brukes av byte[] serializers og de-serializers.
setConfig(DeserializationConfig config) ObjectMapper For å utføre overstyringen av det underliggende DeserializationConfig-objektet, bruker vi denne metoden.
setConfig(SerializationConfig config) ObjectMapper For å utføre overstyringen av det underliggende SerializationConfig-objektet som har serialiseringsspesifikke konfigurasjonsinnstillinger, bruker vi denne metoden.
setDateFormat(DatoFormat datoFormat) ObjectMapper Det brukes til å konfigurere standard DateFormat til å bruke det på tidspunktet for serialisering av tidsverdier som Strings eller de-serialisering fra JSON Strings.
setDefaultPrettyPrinter(PrettyPrinter pp) ObjectMapper Den brukes til å spesifisere PrettyPrinter for bruk når 'default pretty-printing' er aktivert.
setDefaultTyping(TypeResolverBuilder-typer) ObjectMapper Den brukes til å aktivere automatisk inkludering av typeinformasjon.
setHandlerInstantiator(HandlerInstantiator hei) Gjenstand Den brukes til å konfigurere HandlerInstantiator for å lage forekomster av behandlere.
setFilterProvider(FilterProvider filterProvider) ObjectMapper Den brukes til å konfigurere gjeldende kartlegger til å bruke spesifisert FilterProvider for å tilordne filter-ID-er til faktiske filterforekomster.
setInjectableValues(InjectableValues ​​injectableValues) ObjectMapper Den brukes til å konfigurere InjectableValues ​​som brukes til å finne verdier som skal injiseres.
setLocale(Local l) ObjectMapper Den brukes til å overstyre standardlokaliteten som skal brukes for formatering.
setMixInResolver(ClassIntrospector.MixInResolver-oppløsning) ObjectMapper Vi bruker denne metoden for å spesifisere den gitte resolveren for å finne innblandingsklasser som skal brukes, og overstyre direkte lagt til tilordninger.
setMixInAnnotations(Kart sourceMixins) tomrom Det er en avskrevet metode for å definere innblandingskommentarer.
setNodeFactory(JsonNodeFactory f) ObjectMapper Den brukes til å spesifisere JsonNodeFactory som skal brukes til å konstruere trenoder på rotnivå.
setMixIns(Kart sourceMixins) ObjectMapper Den brukes til å definere innblandingsannoteringer som skal brukes for å utvide merknader som bearbeidbare klasser har.
setPropertyInclusion(JsonInclude.Value incl) ObjectMapper Den brukes til å angi standard POJO-egenskapsinkluderingsstrategi for serialisering.
setPropertyNameStrategy(PropertyNameStrategy s) ObjectMapper Den brukes til å angi navnestrategien for egendefinerte egenskaper som skal brukes.
setSerializerFactory(SerializerFactory f) ObjectMapper Den brukes til å angi den spesifikke SerializerFactory som skal brukes for å konstruere (bean) serializers.
setSerializerProvider(DefaultSerializerProvider p) ObjectMapper Den brukes til å angi 'blåkopi' SerializerProvider-forekomsten for å bruke den som base til faktiske leverandørforekomster som skal brukes til å håndtere hurtigbufring av JsonSerializer-forekomster.
setSubtypeResolver(SubtypeResolver str) ObjectMapper Den brukes til å angi den egendefinerte subtype-løseren som skal brukes.
setTimeZone(TimeZone tz) ObjectMapper Den brukes til å overstyre standard tidssone som skal brukes til formatering.
setTypeFactory(TypeFactory f) ObjectMapper Den brukes til å overstyre TypeFactory-forekomsten, som brukes av gjeldende kartlegger.
setVisibility(PropertyAccessor forMethod, JsonAutoDetect.Visibility synlighet)
  1. setVisibility(VisibilityChecker vc)
  2. setVisibilityChecker(VisibilityChecker vc)
ObjectMapper SetVisibility() og dens variant brukes til å angi den gjeldende konfigurerte VisibilityChecker. Den returnerte ObjectMapper-forekomsten brukes til å sjekke om det gitte egenskapselementet kan oppdages automatisk eller ikke.
treeAsTokens(TreeNode n) JsonParser Den brukes til å konstruere en JsonParser ut av JSON-trerepresentasjon.
treeToValue(TreNode n, Class valueType) T Den brukes til å binde dataene gitt JSON-treet inneholder til en bestemt verditype.
versjon() Versjon Den brukes til å få versjonsinformasjonen lagret i og lest fra krukken som inneholder denne klassen.
forfatter()
  1. writer(Base64Variant defaultBase64)
  2. forfatter (CharacterEscapes escapes)
  3. writer(ContextAttributes attrs)
  4. writer (DateFormat df)
  5. writer (FilterProvider filterProvider)
  6. writer (FormatSchema-skjema)
  7. forfatter (PrettyPrinter pp)
  8. writer (SerializationFeature-funksjon)
  9. writer (SerializationFeature først, SerializationFeature... annet)
ObjectWriter Write() og dens variasjoner brukes til å konstruere ObjectWriter med standardinnstillinger, gitt Base64-kodingsvariant for Base64-kodede binære data, tegn-escape-detaljer for utdata, standardattributter, DateFormat, filterleverandør, skjemaobjekt til JsonGenerator brukt til å skrive innhold, pen skriver for innrykk, eller funksjon aktivert.
writerFor(Class rootType) - ObjectWriter Den brukes til å konstruere ObjectWriter for å serialisere objektene ved å bruke en spesifisert rottype i stedet for den faktiske kjøretidstypen.
writerFor(JavaType rootType) ObjectWriter Den brukes til å konstruere ObjectWriter for å serialisere objektene ved å bruke en spesifisert rottype i stedet for den faktiske kjøretidstypen.
writerFor(TypeReference rootType) ObjectWriter Den brukes til å konstruere ObjectWriter for å serialisere objektene ved å bruke en spesifisert rottype i stedet for den faktiske kjøretidstypen.
writerWithDefaultPrettyPrinter() ObjectWriter Det er en fabrikkmetode som brukes til å konstruere ObjectWriter for å serialisere objektene ved å bruke den ganske standardskriveren for innrykk.
writerWithType(Class rootType)
  1. writerWithType(Class rootType)
  2. writerWithType(TypeReference rootType)
ObjectWriter Disse metodene avskrives, og i stedet for dem bruker vi writerFor(TypeReference)-metoden.
writerWithView(Class serializationView) ObjectWriter Det er en fabrikkmetode som brukes til å konstruere ObjectWriter for serialisering av objekter ved bruk av spesifisert JSON View.
writeTree(JsonGenerator jgen, JsonNode rootNode) tomrom Den brukes til å serialisere det medfølgende JSON-treet ved å bruke den gitte JsonGenerator.
skriveverdi(filresultatfil, objektverdi) tomrom Den brukes til å serialisere Java-verdi som JSON-utgang og skrive den til den gitte fil.
writeValue(JsonGenerator g, Objektverdi). tomrom Den brukes til å serialisere Java-verdier som JSON-utdata ved å bruke den gitte JsonGenerator.
writeValue(OutputStream out, Object value) tomrom Den brukes til å serialisere Java-verdi som JSON-utgang ved å bruke den gitte OutputStream.
skriveverdi(Writer w, Object value) tomrom Den brukes til å serialisere Java-verdier som JSON-utdata ved å bruke den gitte Forfatter.
writeValueAsBytes(Objektverdi) byte[] Den brukes til å serialisere Java-verdier som en byte-array.
writeValueAsString(Objektverdi) String Den brukes til å serialisere Java-verdier 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+ ' ]'; } }  

Produksjon:

ObjectMapper-klassen i Jackson