„ObjectMapper“ klasė Džeksone
ObjectMapper yra viena iš svarbiausių klasių Džeksonas biblioteka. Jis naudojamas JSON duomenims skaityti ir rašyti. Jis yra atsakingas už duomenų nuskaitymą iš POJO failo arba į jį ir į JSON medžio modelį bei iš jo.
Yra šios ObjectMapper klasės charakteristikos:
- Jis palaiko pažangias koncepcijas, tokias kaip Polimorfizmas ir Objekto atpažinimas.
- Tai labai pritaikoma dirbti su skirtingų stilių JSON turiniu.
- Jis veikia kaip avanso gamykla ObjectReader ir „ObjectWriter“. klases.
„ObjectMapper“ klasė deklaruojama taip:
public class ObjectMapper extends ObjectCodec implements Versioned, Serializable
Įdėtos klasės
Šioje lentelėje apibrėžiamos klasės, praplečiančios ObjectMapper klasę arba, galima sakyti, įdėtas ObjectMapper klasės klases.
| Klasė | apibūdinimas |
|---|---|
| DefaultTypeResolverBuilder | Tai pritaikyta TypeResolverBuilder klasė, kuri naudojama norint gauti tipo sprendiklio kūrėjus, kuriuos galime naudoti 'numatytasis spausdinimas'. |
| Numatytasis įvedimas | Norint nurodyti tipų tipą, išvardinimai naudojami naudojant enableDefaultTyping() metodą. |
Dabar supraskime ObjectMapper klasės laukus, konstruktorius ir metodus:
„ObjectMapper“ klasės laukai
protected DefaultDeserializationContext _deserializationContext
Tai projektinis konteksto objektas, kuris saugomas leidžiant pasirinktinius poklasius.
protected DeserializationConfig _deserializationConfig
Tai konfigūracijos objektas, naudojamas apibrėžiant pagrindinius visuotinius deserializavimo proceso parametrus.
apsaugotas JsonFactory jsonFactory
Norint sukurti JsonParser ir JsonGenerator egzempliorių, naudojamas JsonFactory.
apsaugotos InjectableValues _injectableValues
Tai teikėjas, kuris naudojamas reikšmėms įterpti į išserializuotus POJO.
apsaugotas ConfigOverrides _propertyOverrides
Jis naudojamas norint pasiekti šiuo metu aktyvius kiekvieno tipo konfigūracijos nepaisymus.
apsaugotas SimpleMixInResolver _mixIns
Tai žemėlapis, naudojamas mišrių komentarų taikymo būdui apibrėžti. Žemėlapio sudarymas atliekamas tokiu būdu:
Raktas: Įveskite, kad gautumėte papildomų komentarų.
Vertė: Tipas su komentarais „įmaišyti“
Protected Set _registeredModuleTypes
Tai rinkinys, apibrėžiantis užregistruotų modulių tipų rinkinį.
apsaugotas SerializationConfig _serializationConfig
Tai taip pat yra konfigūracijos objektas, naudojamas pagrindiniams visuotiniams serializavimo proceso parametrams apibrėžti.
apsaugotas „ConcurrentHashMap“.
Tai žemėlapis, naudojamas sekti šakninio lygio de-serializatorius. Tai pagrindinio lygio žemėlapis.
apsaugotas SerializerFactory _serializerFactory
Tai gamykla, kuri naudojama serializatoriams gaminti.
apsaugotas SubtypeResolver _subtypeResolver
Jis naudojamas potipiams registruoti ir prireikus juos spręsti super/potipiams.
apsaugotas TypeFactory _typeFactory
Tai gamykla, naudojama JavaType egzemplioriams kurti. Jie reikalingi, kad moduliai galėtų pridėti daugiau pasirinktinio tipo tvarkymo.
protected DefaultSerializerProvider _serializerProvider
Tai objektas, atsakingas už prieigos prie serializavimo priemonių, naudojamų serializavimui, valdymą.
apsaugoti statiniai BaseSettings DEFAULT_BASE
Tai yra pagrindiniai nustatymai, apimantys numatytuosius nustatymus, naudojamus visiems „ObjectMapper“ egzemplioriams.
„ObjectMapper“ klasės konstruktoriai
Yra šie ObjectMapper klasės konstruktoriai:
| Konstruktorius | apibūdinimas |
|---|---|
| ObjectMapper () | Tai numatytasis konstruktorius, naudojamas sukurti egzempliorių, kuris naudoja numatytąjį JsonFactory, Serializer Provider, ir BeanSerializerFactory. |
| „ObjectMapper“ („JsonFactory“ gamykla) | Jis naudojamas sukurti egzempliorių, kuris naudoja nurodytą JsonFactory. Konstravimui naudojamas duotas JsonFactory JsonParsers ir/arba JsonGeneratoriai. |
| ObjectMapper (JsonFactory gamykla, SerializerProvider teikėjas1, DeserializerProvider teikėjas2) | Jis naudojamas sukurti egzempliorių, kuris naudoja pateiktą JsonFactory, Serializer Provider, ir DeserializerProvider. Konstravimui naudojamas duotas JsonFactory JsonParsers ir/arba JsonGeneratoriai. |
| apsaugotas „ObjectMapper“ („ObjectMapper“ žemėlapių sudarytojas) | Tai kopijavimo konstruktorius, palaikantis copy (). |
ObjectMapper klasės metodai
„ObjectMapper“ klasė apibrėžia šiuos metodus:
| Metodas | Grąžinimo tipas | apibūdinimas |
|---|---|---|
| _checkInvalidCopy(klasės eksp.) | tuštuma | Jis naudojamas neteisingai kopijai patikrinti. |
| _configAndWriteValue(JsonGenerator g, objekto vertė) | tuštuma | Jis naudojamas generatoriaus konfigūravimui, kai reikia, ir rašymo funkcijai atlikti. |
| _convert(Objektas išValue, JavaType įValueType) | Objektas | Jis naudojamas faktiniam konversijos įgyvendinimui. Čia kodo skaitymo ir rašymo metodai nenaudojami. |
| _initForReading(JsonParser p) | JsonToken | Jis naudojamas siekiant užtikrinti, ar duotas analizatorius yra pasirengęs skaityti turinį duomenų surišimui, ar ne. |
| _findRootDeserializer(DeserializationContext ctxt, JavaType valueType) | JsonDeserializer | Perduotai šakninio lygio vertei, jei norime rasti išserializavimo priemonę, naudojame šį metodą. |
| _newReader(DeserializationConfig config) Panašus metodas:
| ObjectReader | Tai gamyklinis metodas, t. y. naudojamas norint gauti tinkamo potipio ObjectReader egzempliorius. Norint naudoti šį metodą, būtina, kad poklasiai būtų nepaisomi. |
| _newWriter(SerializationConfig config) Panašūs metodai:
| „ObjectWriter“. | Tai gamyklinis metodas, t. y. naudojamas norint gauti tinkamo potipio ObjectWriter egzempliorius. Norint naudoti šį metodą, būtina, kad poklasiai būtų nepaisomi. |
| _readValue(DeserializationConfig cfg, JsonParser p, JavaType valueType) | Objektas | Jis naudojamas norint gauti objektą, kuris apibrėžia vertės skaitymą ir susiejimo operaciją. |
| _serializerProvider(SerializationConfig config) | DefaultSerializerProvider | Tai nepakeičiamas pagalbinis metodas, naudojamas kuriant SerializerProvider. |
| acceptJsonFormatVisitor (klasės tipas, JsonFormatVisitorWrapper lankytojas) Panašus metodas:
| tuštuma tuštuma | Jei norime apsilankyti tam tikro tipo hierarchijoje su nurodytu lankytoju, naudojame šį metodą. |
| addHandler(DeserializationProblemHandler h) | ObjectMapper | Norėdami išspręsti nurodytas problemas išserializacijos metu, naudojame nurodytą DeserializationProblemHandler, o norėdami pridėti tvarkyklę, naudojame šį metodą. |
| „addMixIn“ (klasės tikslas, klasės mišinio šaltinis) | ObjectMapper | Norėdami naudoti mišinio anotaciją nurodytai papildymo klasei arba sąsajai, naudojame šį metodą, kad jį pridėtume. |
| canDeserialize (JavaType tipas) | Būlio | Jis naudojamas patikrinti, ar žemėlapių sudarytojas gali išjungti nurodyto tipo objektą, ar ne. |
| canDeserialize (JavaType tipas, AtomicReference priežastis) | Būlio | Tai panašu į ankstesnį metodą. Vienintelis skirtumas yra tas, kad jis gali grąžinti metamą, kuris buvo išmestas serializatoriaus konstravimo metu. Išmetama gali būti naudojama norint išsiaiškinti tikrąją problemą. |
| gali serializuoti (klasės tipas) | Būlio | Jis naudojamas patikrinti, ar žemėlapių sudarytojas gali nuosekliai sudaryti tam tikro tipo objektą, ar ne. |
| gali serializuoti (klasės tipas, „AtomicReference“ priežastis) | Būlio | Tai panašu į ankstesnį metodą. Vienintelis skirtumas yra tas, kad jis gali grąžinti metamą, kuris buvo išmestas serializatoriaus konstravimo metu. Išmetama gali būti naudojama norint išsiaiškinti tikrąją problemą. |
| clearProblemHandlers () | ObjectMapper | Tai vienas iš metodų, kuris naudojamas pašalinti visus užregistruotus DeserializationProblemHandlers egzempliorius iš kartografijos. |
| konfigūruoti (DeserializationFeature f, loginė būsena) panašūs metodai:
| ObjectMapper | Jis naudojamas objektų atvaizdavimo priemonės, generatoriaus egzempliorių, analizatoriaus egzempliorių, atvaizduotojo egzempliorių ar objektų atvaizdavimo priemonės serializavimo įjungimo / išjungimo būsenai pakeisti. |
| constructType (tipas t) | JavaType | Jei norime sukurti JavaType iš nurodyto tipo be aiškaus konteksto, naudojame šį metodą. |
| convertValue (objektas iš vertės, klasė į vertės tipą) Panašūs metodai:
| T | Jei norime atlikti dviejų žingsnių tam tikros vertės konvertavimą į nurodyto vertės tipo egzempliorių, naudojame metodą converValue(). |
| sukurti ArrayNode() | ArrayNode | Jis naudojamas kuriant ArrayNode. |
| defaultClassIntrospector() | Klasė Introspector | Jei norime naudoti numatytąjį ClassIntrospector, mes naudojame šį Overridable Helper metodą, kad jį sukurtume. |
| išjungti (DeserializationFeature funkcija) Panašūs metodai:
| ObjectMapper | Jis naudojamas norint išjungti nurodytą DeserializationConfig, JsonGenerator.Features analizatoriaus egzemplioriams, JsonParser.Features objektų atvaizdavimo priemonės analizatoriaus egzemplioriams. |
| disableDefaultTyping() | ObjectMapper | Daug kartų turime išjungti automatinį tipo informacijos įtraukimą ir šiuo tikslu naudojame šį metodą. |
įgalinti (DeserializationFeature funkcija)
| ObjectMapper | Jis naudojamas norint įjungti nurodytą DeserializationConfig, JsonGenerator.Features analizatoriaus egzemplioriams, JsonParser.Features objektų atvaizdavimo priemonės analizatoriaus egzemplioriams. |
| ĮgalintiDefaultTyping() Panašūs metodai:
| ObjectMapper | Norėdami naudoti automatinį tipo informacijos įtraukimą polimorfinių tipų serializavimui, naudojame šį metodą, kad jį įjungtume. |
| FindAndRegisterModules() | ObjectMapper | Jis panašus į mapper.registerModules(mapper.findModules()) metodą. |
| rasti modulius () Panašūs metodai:
| Sąrašas | Jis naudojamas galimiems metodams nustatyti. Metodas naudoja JDK ServiceLoader įrenginį su modulio teikiamu SPI. |
| getDateFormat() | Datos formatas | Jis naudojamas datos formatui gauti. |
| getDeserializationConfig() | DeserializationConfig | Jis naudojamas norint gauti bendrinamą numatytąjį DeserializationConfig objektą. Grąžintas objektas apibrėžia konfigūracijos nustatymus, kad būtų galima išjungti seriją. |
| getDeserializationContext() | Deserializacijos kontekstas | Jis naudojamas norint gauti dabartinį DeserializationContext. |
| getFactory () | JsonFactory | Jei žemėlapių sudarytojui reikia sukurti Json analizatorių ir generatorius, jam reikia json factory, o norėdami tai gauti, naudojame getFactory() metodą. |
| getInjectableValues() | Injekcinės vertės | Jis naudojamas injekcinėms vertėms gauti. |
| getJsonFactory () | JsonFactory | Tai pasenęs būdas gauti Json gamyklą. |
| getNodeFactory() | JsonNodeFactory | Jis naudojamas gauti JsonNodeFactory, kurį naudoja žemėlapių sudarytojas tiesiogiai kurdamas šakninius JsonNode egzempliorius medžiams. |
| getPropertyNamingStrategy() | PropertyNamingStrategy | Kaip rodo pavadinimas, jis naudojamas prie nuosavybės pavadinimo strategijos. |
| getSerializationConfig() | SerializationConfig | Jis naudojamas norint gauti bendrinamą numatytąjį SerializationConfig objektą. Grąžintas objektas apibrėžia serializavimo konfigūracijos parametrus. |
| getSerializerFactory() | SerializerFactory | Jis naudojamas dabartinei SerializerFactory gauti. |
| getSerializerProvider() | Serializer Provider | Tai yra gamyklos priedas, naudojamas egzemplioriams kurti iškviečiant DefaultSerializerProvider.createInstance(SerializationConfig, SerializerFactory). |
| getSerializerProviderInstance() | Serializer Provider | Tai priedas, naudojamas sukurti ir grąžinti SerializerProvider egzempliorių, kurį galime naudoti norėdami pasiekti serializatorius. |
| getSubtypeResolver() | SubtypeResolver | Jis naudojamas norint pasiekti naudojamą potipių sprendiklį. |
| getTypeFactory() | TipasGamyklos | Tai yra priedas, naudojamas norint gauti šiuo metu sukonfigūruoto „TypeFactory“ egzempliorių. |
| getVisibilityChecker() | Matomumo tikrintuvas | Jis naudojamas norint pasiekti šiuo metu sukonfigūruotą matomumo tikrintuvą. |
| isEnabled (deserializacijos funkcija f) Panašūs metodai:
| Būlio | Metodas isEnable() ir jo variantai naudojami patikrinti, ar įjungta tam tikra deserializavimo funkcija, JsonFactory, JsonGenerator, JsonParser, Mapper arba Serialization funkcija, ar ne. |
| mixInCount() | tarpt | Jis naudojamas mixIn skaičiui gauti. |
| skaitytojas () Panašūs metodai:
| ObjectReader | Reader() metodas ir jo variantai yra gamykliniai metodai, naudojami kuriant ObjectReader egzempliorių. Remdamiesi reikalavimu, galime perduoti Base64 kodavimo variantą Base64 koduotiems dvejetainiams duomenims, numatytiesiems atributams, įgalintoms funkcijoms, įleidžiamoms reikšmėms, JsonNodeFactory JSON medžiams kurti. |
| skaitytuvas (klasės tipas) | ObjectReader | Tai gamyklinis metodas, naudojamas ObjectReader konstravimui, leidžiantis nuskaityti arba atnaujinti nurodyto tipo egzempliorius. |
| ReaderFor (JavaType tipas) | ObjectReader | Tai gamyklinis metodas, naudojamas ObjectReader konstravimui, leidžiantis nuskaityti arba atnaujinti nurodytas JavaType egzempliorius. |
| ReaderFor (TypeReference tipas) | ObjectReader | Tai gamyklinis metodas, naudojamas ObjectReader konstravimui, leidžiantis nuskaityti arba atnaujinti nurodytas TypeReference egzempliorius. |
| ReaderForUpdating (Object valueToUpdate) | ObjectReader | Tai gamyklinis metodas, naudojamas ObjectReader konstravimui, leidžiantis atlikti tam tikro objekto atnaujinimo operacijas. |
| ReaderWithView (klasės vaizdas) | ObjectReader | Tai gamyklinis metodas, naudojamas ObjectReader konstravimui, leidžiantis objektų serializavimas naudojant pateiktą JSON rodinį. |
skaitymo medis (baito[] turinys)
| JsonNode ARBA T | ReadTree() ir jo variantai naudojami JSON turinio nuoseklumui išjungti kaip medį, išreikštą naudojant JsonNode egzempliorių rinkinį. |
| readValue(baitas[] src, klasės vertės tipas) Panašūs metodai
| T ARBA MappingIterator | ReadValue() ir jos variantai naudojami JSON turinio serialams panaikinti
|
| readValues (JsonParser p, Class valueType) Panašūs metodai:
| MappingIterator | ReadValues() ir jo variantai naudojami nuskaityti objektų seką iš analizatoriaus srauto. |
| registerModule (Modulio modulis) Panašūs metodai:
| ObjectMapper | RegisterModule() ir jo variantai naudojami registruoti modulį, galintį išplėsti žemėlapio sudarytojo teikiamas funkcijas. |
| registro potipiai (pavadintas tipas... tipai) | tuštuma | Jis naudojamas tam tikrai klasei registruoti kaip potipiui. Tai darant, tipo pavadinimu pagrįsta skiriamoji geba gali susieti supertipus su potipiais. |
| setAnnotationIntrospector(AnnotationIntrospector ai) | ObjectMapper | Jis naudojamas nustatant AnnotationIntrospector, kurį atvaizdavimo egzempliorius naudoja ir serializavimui, ir serializavimui. |
| setAnnotationIntrospectors (AnnotationIntrospector serializerAI, AnnotationIntrospector deserializerAI) | ObjectMapper | Jis naudojamas norint pakeisti AnnotationIntrospector egzempliorių, naudojamą dabartinio kartografavimo egzemplioriaus serializavimui ir serializavimui. |
| setBase64Variant(Base64Variant v) | ObjectMapper | Jis naudojamas konfigūruoti numatytąjį „Base64Variant“, kurį naudos baitų [] serijų keitikliai ir išserializatoriai. |
| setConfig (DeserializationConfig config) | ObjectMapper | Norėdami atlikti pagrindinio DeserializationConfig objekto nepaisymą, naudojame šį metodą. |
| setConfig (SerializationConfig config) | ObjectMapper | Siekdami nepaisyti pagrindinio SerializationConfig objekto, turinčio konfigūracijos konfigūracijos parametrus, taikomus serializavimui, naudojame šį metodą. |
| setDateFormat (datos formato datos formatas) | ObjectMapper | Jis naudojamas sukonfigūruoti numatytąjį datos formatą, kad jis būtų naudojamas nuosekliai nustatant laiko reikšmes kaip eilutes arba išjungiant serijas iš JSON eilučių. |
| setDefaultPrettyPrinter (PrettyPrinter pp) | ObjectMapper | Jis naudojamas norint nurodyti „PrettyPrinter“, kad jis būtų naudojamas, kai įjungtas „numatytasis gražus spausdinimas“. |
| setDefaultTyping (TypeResolverBuilder typer) | ObjectMapper | Jis naudojamas automatiškai įtraukti tipo informaciją. |
| setHandlerInstantiator (HandlerInstantiator sveiki) | Objektas | Jis naudojamas konfigūruoti HandlerInstantiator, kad jis būtų naudojamas kuriant tvarkyklių egzempliorius. |
| setFilterProvider (FilterProvider filterProvider) | ObjectMapper | Jis naudojamas konfigūruoti dabartinį atvaizdavimo įrenginį, kad jis naudotų nurodytą filtrų teikėją, susietą su filtrų ID su faktiniais filtrų egzemplioriais. |
| setInjectableValues (InjectableValues InjectableValues) | ObjectMapper | Jis naudojamas sukonfigūruoti InjectableValues, kurios naudojamos norint rasti įpurškias reikšmes. |
| setLocale(Local l) | ObjectMapper | Jis naudojamas norint nepaisyti numatytosios lokalės, naudojamos formatuojant. |
| setMixInResolver (ClassIntrospector.MixInResolver rezoliucija) | ObjectMapper | Naudojame šį metodą, norėdami nurodyti nurodytą raišką, kad surastume naudotinas sumaišymo klases, nepaisydami tiesiogiai pridėtų atvaizdų. |
| setMixInAnnotations (žemėlapis | tuštuma | Tai yra nuvertintas metodas mišriajai anotacijai apibrėžti. |
| setNodeFactory(JsonNodeFactory f) | ObjectMapper | Jis naudojamas norint nurodyti „JsonNodeFactory“, kad būtų galima kurti šaknies lygio medžio mazgus. |
| setMixIns (žemėlapis | ObjectMapper | Jis naudojamas mišrioms anotacijoms apibrėžti, kad būtų galima papildyti apdorojamų klasių komentarus. |
| setPropertyInclusion(JsonInclude.Value incl) | ObjectMapper | Jis naudojamas norint nustatyti numatytąją POJO nuosavybės įtraukimo strategiją serializavimui. |
| setPropertyNamingStrategy(PropertyNamingStrategy s) | ObjectMapper | Jis naudojamas norint nustatyti pasirinktinę nuosavybės įvardijimo strategiją. |
| setSerializerFactory(SerializerFactory f) | ObjectMapper | Jis naudojamas norint nustatyti konkrečią SerializerFactory, kuri bus naudojama (pupelių) serializatoriams kurti. |
| setSerializerProvider (DefaultSerializerProvider p) | ObjectMapper | Jis naudojamas „Blueprint“ SerializerProvider egzemplioriui nustatyti, kad jis būtų naudojamas kaip pagrindas faktiniams teikėjo egzemplioriams, naudojamiems JsonSerializer egzempliorių kaupimui talpykloje. |
| setSubtypeResolver(SubtypeResolver str) | ObjectMapper | Jis naudojamas norint nustatyti pasirinktinį potipio sprendiklį. |
| setTimeZone (TimeZone tz) | ObjectMapper | Jis naudojamas norint nepaisyti numatytosios laiko juostos, naudojamos formatavimui. |
| setTypeFactory(TypeFactory f) | ObjectMapper | Jis naudojamas nepaisyti TypeFactory egzemplioriaus, kurį naudoja dabartinis kartografas. |
setVisibility (PropertyAccessor forMethod, JsonAutoDetect.Visibility matomumas)
| ObjectMapper | SetVisibility() ir jo variantas naudojami šiuo metu sukonfigūruotam VisibilityChecker nustatymui. Grąžintas „ObjectMapper“ egzempliorius naudojamas patikrinti, ar nurodytas nuosavybės elementas gali būti automatiškai aptiktas, ar ne. |
| TreeAsTokens (medžio mazgas n) | JsonParser | Jis naudojamas JsonParser sukurti iš JSON medžio vaizdavimo. |
| treeToValue (medžio mazgas n, klasės vertės tipas) | T | Jis naudojamas JSON medyje pateiktiems duomenims susieti su konkrečiu vertės tipu. |
| versija () | Versija | Jis naudojamas versijos informacijai gauti ir nuskaityti iš jar, kuriame yra ši klasė. |
rašytojas ()
| „ObjectWriter“. | Write() ir jo variantai naudojami sukurti ObjectWriter su numatytaisiais parametrais, atsižvelgiant į Base64 kodavimo variantą Base64 koduotiems dvejetainiams duomenims, simbolių pašalinimo informaciją išvesties, numatytuosius atributus, DateFormat, filtro teikėją, schemos objektą JsonGenerator, naudojamą turiniui rašyti, gražus spausdintuvas, skirtas įtraukimui arba įjungta funkcija. |
| rašytojas(klasės šakninis tipas) – | „ObjectWriter“. | Jis naudojamas konstruoti „ObjectWriter“, kad būtų galima suskirstyti objektus, naudojant nurodytą šakninį tipą, o ne tikrąjį vykdymo laiko vertės tipą. |
| writerFor (JavaType rootType) | „ObjectWriter“. | Jis naudojamas konstruoti „ObjectWriter“, kad būtų galima suskirstyti objektus, naudojant nurodytą šakninį tipą, o ne tikrąjį vykdymo laiko vertės tipą. |
| writerFor(TypeReference rootType) | ObjectWriter | Jis naudojamas konstruoti „ObjectWriter“, kad būtų galima suskirstyti objektus, naudojant nurodytą šakninį tipą, o ne tikrąjį vykdymo laiko vertės tipą. |
| rašytojasWithDefaultPrettyPrinter() | ObjectWriter | Tai gamyklinis metodas, naudojamas konstruoti „ObjectWriter“, skirtą objektų nuoseklumui sudaryti naudojant gana numatytąjį spausdintuvą įtraukai. |
writerWithType (klasės šakninis tipas)
| „ObjectWriter“. | Šie metodai yra nusidėvėję, o vietoj jų naudojame metodą writerFor(TypeReference). |
| writerWithView (klasės serializacijos vaizdas) | „ObjectWriter“. | Tai gamyklinis metodas, naudojamas konstruoti ObjectWriter, skirtą objektams nuoseklizuoti naudojant nurodytą JSON rodinį. |
| writeTree (JsonGenerator jgen, JsonNode rootNode) | tuštuma | Jis naudojamas pateiktam JSON medžiui suskirstyti naudojant nurodytą JsonGenerator. |
| writeValue (failo rezultatasFailas, objekto vertė) | tuštuma | Jis naudojamas „Java“ reikšmei suskirstyti kaip JSON išvestį ir įrašyti ją į nurodytą failą. |
| writeValue(JsonGenerator g, objekto reikšmė). | tuštuma | Jis naudojamas „Java“ reikšmėms suskirstyti kaip JSON išvestį naudojant nurodytą JsonGenerator. |
| writeValue (OutputStream out, Object value) | tuštuma | Jis naudojamas norint suskirstyti Java reikšmę kaip JSON išvestį naudojant nurodytą OutputStream. |
| writeValue (Writer w, objekto vertė) | tuštuma | Jis naudojamas „Java“ reikšmėms suskirstyti kaip JSON išvestį naudojant nurodytą Rašytojas. |
| writeValueAsBytes (objekto vertė) | baitas [] | Jis naudojamas „Java“ reikšmėms suskirstyti kaip baitų masyvas. |
| writeValueAsString(Objekto vertė) | Styga | Jis naudojamas „Java“ reikšmėms suskirstyti kaip eilutė. |
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+ ' ]'; } } Išvestis: