ObjectMapper klase Džeksonā
ObjectMapper ir viena no svarīgākajām pieejamajām klasēm Džeksons bibliotēka. To izmanto JSON datu lasīšanai un rakstīšanai. Tas ir atbildīgs par datu nolasīšanu no POJO faila vai uz to un uz JSON koka modeli un no tā.
ObjectMapper klasei ir šādas īpašības:
- Tā atbalsta uzlabotas koncepcijas, piemēram, Polimorfisms un Objektu atpazīšana.
- Tas ir ļoti pielāgojams darbam ar dažādu stilu JSON saturu.
- Tā darbojas kā avansu rūpnīca ObjectReader un ObjectWriter klases.
ObjectMapper klase tiek deklarēta šādi:
public class ObjectMapper extends ObjectCodec implements Versioned, Serializable
Ligzdotas klases
Nākamajā tabulā ir definētas klases, kas paplašina ObjectMapper klasi vai, var teikt, ObjectMapper klases ligzdotās klases.
| Klase | Apraksts |
|---|---|
| DefaultTypeResolverBuilder | Tas ir pielāgots TypeResolverBuilder klase, kas tiek izmantota, lai iegūtu tipa atrisinātāju veidotājus, kurus mēs varam izmantot 'noklusējuma rakstīšana'. |
| Noklusējuma rakstīšana | Lai norādītu veidu veidus, uzskaitījumi tiek izmantoti ar metodi enableDefaultTyping(). |
Tagad sapratīsim ObjectMapper klases laukus, konstruktorus un metodes:
ObjectMapper klases lauki
protected DefaultDeserializationContext _deserializationContext
Tas ir projekta konteksta objekts, kas tiek saglabāts, lai atļautu pielāgotas apakšklases.
protected DeserializationConfig _deserializationConfig
Tas ir konfigurācijas objekts, ko izmanto, lai definētu galvenos globālos iestatījumus de-serializācijas procesam.
aizsargāts JsonFactory jsonFactory
Lai izveidotu JsonParser un JsonGenerator gadījumu, tiek izmantots JsonFactory.
aizsargātas InjectableValues _injectableValues
Tas ir nodrošinātājs, kas tiek izmantots vērtību ievadīšanai deserializētos POJO.
aizsargātas ConfigOverrides _propertyOverrides
To izmanto, lai piekļūtu pašlaik aktīvajiem katra veida konfigurācijas ignorējumiem.
aizsargāts SimpleMixInResolver _mixIns
Tā ir kartēšana, ko izmanto, lai definētu kombinēto anotāciju pielietošanas veidu. Kartēšana tiek veikta šādā veidā:
Taustiņš: Ierakstiet, lai saņemtu papildu anotācijas.
Vērtība: Veids, kuram ir pievienotas piezīmes
aizsargāts Set _registeredModuleTypes
Tā ir kopa, kas nosaka reģistrēto moduļu tipu kopu.
aizsargāts SerializationConfig _serializationConfig
Tas ir arī konfigurācijas objekts, ko izmanto, lai definētu serializācijas procesa galvenos globālos iestatījumus.
aizsargāta ConcurrentHashMap
Tā ir karte, kas tiek izmantota, lai sekotu līdzi saknes līmeņa de-serializatoriem. Tā ir galvenā līmeņa karte.
aizsargāts SerializerFactory _serializerFactory
Tā ir rūpnīca, kas tiek izmantota serializatoru izgatavošanai.
aizsargāts SubtypeResolver _subtypeResolver
To izmanto, lai reģistrētu apakštipus un pēc vajadzības tos atrisinātu super/apakštipiem.
aizsargāts TypeFactory _typeFactory
Tā ir rūpnīca, kas tiek izmantota, lai izveidotu JavaType gadījumus. Tie ir nepieciešami, lai moduļi varētu pievienot vairāk pielāgotu tipu apstrādi.
protected DefaultSerializerProvider _serializerProvider
Tas ir objekts, kas ir atbildīgs par piekļuves pārvaldību serializatoriem, ko izmanto serializēšanai.
aizsargāti statiski BaseSettings DEFAULT_BASE
Tie ir pamata iestatījumi, kas ietver noklusējuma iestatījumus, kas tiek izmantoti visiem ObjectMapper gadījumiem.
ObjectMapper klases konstruktori
Ir šādi ObjectMapper klases konstruktori:
| Konstruktors | Apraksts |
|---|---|
| ObjectMapper() | Tas ir noklusējuma konstruktors, ko izmanto, lai izveidotu instanci, kas izmanto noklusējuma JsonFactory, SerializerProvider, un BeanSerializerFactory. |
| ObjectMapper (JsonFactory rūpnīca) | To izmanto, lai izveidotu gadījumu, kas izmanto doto JsonFactory. Konstruēšanai tiek izmantota dotā JsonFactory JsonParsers un/vai JsonGenerators. |
| ObjectMapper (JsonFactory rūpnīca, SerializerProvider nodrošinātājs1, DeserializerProvider nodrošinātājs2) | To izmanto, lai izveidotu gadījumu, kas izmanto doto JsonFactory, SerializerProvider, un DeserializerProvider. Konstruēšanai tiek izmantota dotā JsonFactory JsonParsers un/vai JsonGenerators. |
| aizsargāts ObjectMapper (ObjectMapper kartētājs) | Tas ir kopēšanas konstruktors, kas atbalsta copy (). |
ObjectMapper klases metodes
ObjectMapper klase definē šādas metodes:
| Metode | Atgriešanas veids | Apraksts |
|---|---|---|
| _checkInvalidCopy(klases eksp.) | nederīgs | To izmanto, lai pārbaudītu nederīgu kopiju. |
| _configAndWriteValue(JsonGenerator g, objekta vērtība) | nederīgs | To izmanto, lai vajadzības gadījumā konfigurētu ģeneratoru un pēc tam veiktu rakstīšanas funkcionalitāti. |
| _convert(Objekts noValue, JavaType uzValueType) | Objekts | To izmanto, lai iegūtu faktisko reklāmguvumu ieviešanu. Šeit kodam netiek izmantotas lasīšanas un rakstīšanas metodes. |
| _initForReading(JsonParser p) | JsonToken | To izmanto, lai pārliecinātos, vai dotais parsētājs ir gatavs satura lasīšanai datu saistīšanai vai nē. |
| _findRootDeserializer(DeserializationContext ctxt, JavaType valueType) | JsonDeserializer | Nodotajai saknes līmeņa vērtībai, ja vēlamies atrast de-serializatoru, mēs izmantojam šo metodi. |
| _newReader(DeserializationConfig config) Līdzīga metode:
| ObjectReader | Tā ir rūpnīcas metode, t.i., tiek izmantota, lai iegūtu atbilstoša apakštipa ObjectReader gadījumus. Lai izmantotu šo metodi, apakšklasēm ir jābūt ignorētām. |
| _newWriter(SerializationConfig config) Līdzīgas metodes:
| ObjectWriter | Tā ir rūpnīcas metode, t.i., tiek izmantota, lai iegūtu atbilstoša apakštipa ObjectWriter gadījumus. Lai izmantotu šo metodi, apakšklasēm ir jābūt ignorētām. |
| _readValue(DeserializationConfig cfg, JsonParser p, JavaType valueType) | Objekts | To izmanto, lai iegūtu objektu, kas definē vērtību nolasīšanas un saistīšanas darbību. |
| _serializerProvider(SerializationConfig config) | DefaultSerializerProvider | Tā ir nepārspējama palīgmetode, kas tiek izmantota, lai izveidotu SerializerProvider. |
| acceptJsonFormatVisitor (klases veids, JsonFormatVisitorWrapper apmeklētājs) Līdzīga metode:
| nederīgs nederīgs | Ja mēs vēlamies apmeklēt noteikta tipa hierarhiju ar norādīto apmeklētāju, mēs izmantojam šo metodi. |
| addHandler(DeserializationProblemHandler h) | ObjectMapper | Lai deserializācijas laikā risinātu noteiktas problēmas, mēs izmantojam norādīto DeserializationProblemHandler, un, lai pievienotu apdarinātāju, mēs izmantojam šo metodi. |
| addMixIn (klases mērķis, klases mixinSource) | ObjectMapper | Lai izmantotu jaukto anotāciju noteiktai papildināšanas klasei vai interfeisam, mēs izmantojam šo metodi, lai to pievienotu. |
| canDeserialize (JavaType tips) | Būla | To izmanto, lai pārbaudītu, vai kartētājs var deserializēt noteikta veida objektu vai nē. |
| canDeserialize (JavaType tips, AtomicReference cēlonis) | Būla | Tas ir līdzīgs iepriekšējai metodei. Vienīgā atšķirība ir tā, ka tā var atgriezt iemetamo, kas tika izmests seriālizatora konstruēšanas laikā. Izmetamo var izmantot, lai noskaidrotu faktisko problēmu. |
| var serializēt (klases veids) | Būla | To izmanto, lai pārbaudītu, vai kartētājs var serializēt noteikta veida objektu vai nē. |
| var serializēt (klases veids, AtomicReference cēlonis) | Būla | Tas ir līdzīgs iepriekšējai metodei. Vienīgā atšķirība ir tā, ka tā var atgriezt iemetamo, kas tika izmests seriālizatora konstruēšanas laikā. Izmetamo var izmantot, lai noskaidrotu faktisko problēmu. |
| clearProblemHandlers() | ObjectMapper | Tā ir viena no metodēm, kas tiek izmantota visu reģistrēto DeserializationProblemHandlers gadījumu noņemšanai no kartētāja. |
| konfigurēt (deserializācijas funkcija f, Būla stāvoklis) līdzīgas metodes:
| ObjectMapper | To izmanto, lai mainītu objektu kartētāja, ģeneratora gadījumu, parsētāja gadījumu, kartētāja gadījumu vai objektu kartētāja ieslēgšanas/izslēgšanas deserializācijas, Json Generator, JsonParser, Mapper vai Serialization līdzekļa stāvokli. |
| constructType (tips t) | JavaType | Ja mēs vēlamies izveidot JavaType no noteikta veida bez skaidra konteksta, mēs izmantojam šo metodi. |
| convertValue (objekts no vērtības, klase uz vērtības veidu) Līdzīgas metodes:
| T | Ja mēs vēlamies veikt noteiktas vērtības divpakāpju konvertēšanu noteikta vērtības tipa instancē, mēs izmantojam metodi converValue(). |
| CreateArrayNode() | ArrayNode | To izmanto, lai izveidotu ArrayNode. |
| defaultClassIntrospector() | KlaseIntrospector | Ja vēlamies izmantot noklusējuma ClassIntrospector, mēs izmantojam šo Overridable palīga metodi tā izveidošanai. |
| atspējot (deserializācijas funkcijas funkcija) Līdzīgas metodes:
| ObjectMapper | To izmanto, lai atspējotu dotās DeserializationConfig, JsonGenerator.Features parsētāja gadījumiem, JsonParser.Features objektu kartētāja parsētāja gadījumiem. |
| disableDefaultTyping() | ObjectMapper | Daudzas reizes mums ir jāatspējo tipa informācijas automātiskā iekļaušana, un šim nolūkam mēs izmantojam šo metodi. |
iespējot (deserializācijas funkcijas funkcija)
| ObjectMapper | To izmanto, lai iespējotu doto DeserializationConfig, JsonGenerator.Features parsētāja gadījumiem, JsonParser.Features objektu kartētāja parsētāja gadījumiem. |
| iespējotDefaultTyping() Līdzīgas metodes:
| ObjectMapper | Lai izmantotu tipa informācijas automātisku iekļaušanu polimorfo tipu deserializācijai., mēs izmantojam šo metodi, lai to iespējotu. |
| FindAndRegisterModules() | ObjectMapper | Tā ir līdzīga metodei mapper.registerModules(mapper.findModules()). |
| atrast moduļus () Līdzīgas metodes:
| Saraksts | To izmanto, lai atrastu pieejamās metodes. Metode izmanto JDK ServiceLoader iespēju ar moduļa nodrošināto SPI. |
| getDateFormat() | Datuma formāts | To izmanto, lai iegūtu datuma formātu. |
| getDeserializationConfig() | DeserializationConfig | To izmanto, lai iegūtu koplietoto noklusējuma DeserializationConfig objektu. Atgrieztais objekts nosaka deserializācijas konfigurācijas iestatījumus. |
| getDeserializationContext() | Deserializācijas konteksts | To izmanto, lai iegūtu pašreizējo DeserializationContext. |
| getFactory() | JsonFactory | Ja kartētājam ir jāizveido Json parsētājs un ģeneratori, tam ir nepieciešams Json rūpnīca, un, lai to iegūtu, mēs izmantojam metodi getFactory(). |
| getInjectableValues() | InjectableValues | To izmanto, lai iegūtu injicējamās vērtības. |
| getJsonFactory() | JsonFactory | Tā ir novecojusi Json rūpnīcas iegūšanas metode. |
| getNodeFactory() | JsonNodeFactory | To izmanto, lai iegūtu JsonNodeFactory, ko izmanto kartētājs, tieši veidojot saknes JsonNode gadījumus kokiem. |
| getPropertyNamingStrategy() | PropertyNamingStrategy | Kā norāda nosaukums, tas tiek izmantots īpašuma nosaukšanas stratēģijai. |
| getSerializationConfig() | SerializationConfig | To izmanto, lai iegūtu koplietoto noklusējuma SerializationConfig objektu. Atgrieztais objekts definē konfigurācijas iestatījumus serializācijai. |
| getSerializerFactory() | SerializerFactory | To izmanto, lai iegūtu pašreizējo SerializerFactory. |
| getSerializerProvider() | SerializerProvider | Tas ir rūpnīcas piederums, ko izmanto, lai izveidotu gadījumus, izsaucot DefaultSerializerProvider.createInstance(SerializationConfig, SerializerFactory). |
| getSerializerProviderInstance() | SerializerProvider | Tas ir piederums, ko izmanto, lai izveidotu un atgrieztu SerializerProvider instanci, ko mēs varam izmantot, lai piekļūtu serializatoriem. |
| getSubtypeResolver() | ApakštipsResolver | To izmanto, lai piekļūtu izmantotajam apakštipa atrisinātājam. |
| getTypeFactory() | TipsRūpnīca | Tas ir piekļuves līdzeklis, kas tiek izmantots, lai iegūtu pašlaik konfigurētā TypeFactory instanci. |
| getVisibilityChecker() | Redzamības pārbaudītājs | To izmanto, lai piekļūtu pašlaik konfigurētajam redzamības pārbaudītājam. |
| isEnabled (deserializācijas funkcija f) Līdzīgas metodes:
| Būla | Metode isEnable() un tās variācijas tiek izmantotas, lai pārbaudītu, vai ir iespējots konkrētais deserializācijas līdzeklis, JsonFactory, JsonGenerator, JsonParser, Mapper vai Serialization līdzeklis. |
| mixInCount() | starpt | To izmanto, lai iegūtu mixIn skaitu. |
| lasītājs () Līdzīgas metodes:
| ObjectReader | Reader() metode un tās variācijas ir rūpnīcas metodes, kas tiek izmantotas, lai izveidotu ObjectReader gadījumu. Pamatojoties uz prasību, mēs varam nodot Base64 kodēšanas variantu Base64 kodētiem bināriem datiem, noklusējuma atribūtiem, iespējotiem līdzekļiem, injicējamām vērtībām, JsonNodeFactory JSON koku konstruēšanai. |
| lasītājs (klases veids) | ObjectReader | Tā ir rūpnīcas metode, ko izmanto, lai izveidotu ObjectReader, ļaujot lasīt vai atjaunināt norādītā tipa gadījumus. |
| ReaderFor (JavaType tips) | ObjectReader | Tā ir rūpnīcas metode, kas tiek izmantota, lai izveidotu ObjectReader, ļaujot lasīt vai atjaunināt noteikta JavaType gadījumiem. |
| ReaderFor (tipa atsauces veids) | ObjectReader | Tā ir rūpnīcas metode, kas tiek izmantota, lai izveidotu ObjectReader, ļaujot lasīt vai atjaunināt darbības konkrētā TypeReference gadījumiem. |
| ReaderForUpdating(Object valueToUpdate) | ObjectReader | Tā ir rūpnīcas metode, kas tiek izmantota, lai izveidotu ObjectReader, kas ļauj veikt atjaunināšanas darbības konkrētajam objektam. |
| ReaderWithView (klases skats) | ObjectReader | Tā ir rūpnīcas metode, kas tiek izmantota, lai izveidotu ObjectReader, ļaujot objektu deserializācija ar doto JSON skatu. |
readTree(baitu[] saturs)
| JsonNode VAI T | ReadTree() un tā varianti tiek izmantoti, lai deserializētu JSON saturu kā koku, kas izteikts, izmantojot JsonNode gadījumu kopu. |
| readValue(baits[] src, klases vērtības veids) Līdzīgas metodes
| T VAI MappingIterator | ReadValue() un tā varianti tiek izmantoti JSON satura deserializēšanai
|
| readValues (JsonParser p, Class valueType) Līdzīgas metodes:
| MappingIterator | ReadValues () un tā variācijas tiek izmantotas, lai nolasītu objektu secību no parsētāja straumes. |
| registerModule (Moduļa modulis) Līdzīgas metodes:
| ObjectMapper | RegisterModule() un tā variācijas tiek izmantotas, lai reģistrētu moduli, kam ir iespēja paplašināt kartētāja sniegto funkcionalitāti. |
| reģistra apakštipi (Nosaukuma tipa... veidi) | nederīgs | To izmanto, lai reģistrētu doto klasi kā apakštipu. To darot, uz tipa nosaukumu balstītā izšķirtspēja var saistīt supertipus ar apakštipiem. |
| setAnnotationIntrospector(AnnotationIntrospector ai) | ObjectMapper | To izmanto, lai iestatītu AnnotationIntrospector, ko kartētāja instance izmanto gan serializācijai, gan deserializācijai. |
| setAnnotationIntrospectors(AnnotationIntrospector serializerAI, AnnotationIntrospector deserializerAI) | ObjectMapper | To izmanto, lai mainītu AnnotationIntrospector gadījumu, ko pašreizējā kartētāja instancē izmanto serializācijai un deserializācijai. |
| setBase64Variant(Base64Variant v) | ObjectMapper | To izmanto, lai konfigurētu noklusējuma Base64Variant, ko izmantos baitu [] serializatori un de-serializatori. |
| setConfig (DeserializationConfig konfigurācija) | ObjectMapper | Lai veiktu pamatā esošā DeserializationConfig objekta ignorēšanu, mēs izmantojam šo metodi. |
| setConfig (SerializationConfig konfigurācija) | ObjectMapper | Lai veiktu pamatā esošā SerializationConfig objekta ignorēšanu ar serializācijas specifiskiem konfigurācijas iestatījumiem, mēs izmantojam šo metodi. |
| setDateFormat(DateFormat dateFormat) | ObjectMapper | To izmanto, lai konfigurētu noklusējuma datuma formātu, lai to izmantotu laika vērtību serializēšanas laikā kā virknes vai deserializējot no JSON virknēm. |
| setDefaultPrettyPrinter(PrettyPrinter pp) | ObjectMapper | To izmanto, lai norādītu PrettyPrinter, lai to izmantotu, ja ir iespējota noklusējuma glīta drukāšana. |
| setDefaultTyping (TypeResolverBuilder tipinātājs) | ObjectMapper | To izmanto, lai iespējotu tipa informācijas automātisku iekļaušanu. |
| setHandlerInstantiator (HandlerInstantiator sveiki) | Objekts | To izmanto, lai konfigurētu HandlerInstantiator, lai to izmantotu apstrādātāju gadījumu izveidošanai. |
| setFilterProvider(FilterProvider filterProvider) | ObjectMapper | To izmanto, lai konfigurētu pašreizējo kartētāju, lai tas izmantotu norādīto FilterProvider, lai kartētu filtru ID ar faktiskajiem filtra gadījumiem. |
| setInjectableValues (InjectableValues injectableValues) | ObjectMapper | To izmanto, lai konfigurētu InjectableValues, ko izmanto, lai atrastu ievadāmās vērtības. |
| setLocale (lokālais l) | ObjectMapper | To izmanto, lai ignorētu noklusējuma lokalizāciju, ko izmantot formatēšanai. |
| setMixInResolver(ClassIntrospector.MixInResolver atrisināt) | ObjectMapper | Mēs izmantojam šo metodi, lai norādītu doto atrisinātāju, lai atrastu izmantojamās jaukšanas klases, ignorējot tieši pievienotās kartēšanas. |
| setMixInAnnotations (karte | nederīgs | Tā ir nolietota metode jauktās anotācijas definēšanai. |
| setNodeFactory(JsonNodeFactory f) | ObjectMapper | To izmanto, lai norādītu JsonNodeFactory, ko izmantot saknes līmeņa koka mezglu konstruēšanai. |
| setMixIns (karte | ObjectMapper | To izmanto, lai definētu jauktās anotācijas, ko izmantot, lai papildinātu apstrādājamām klasēm esošās anotācijas. |
| setPropertyInclusion(JsonInclude.Value incl) | ObjectMapper | To izmanto, lai iestatītu noklusējuma POJO rekvizītu iekļaušanas stratēģiju serializācijai. |
| setPropertyNamingStrategy(PropertyNamingStrategy s) | ObjectMapper | To izmanto, lai iestatītu izmantojamo pielāgoto rekvizītu nosaukšanas stratēģiju. |
| setSerializerFactory(SerializerFactory f) | ObjectMapper | To izmanto, lai iestatītu konkrēto SerializerFactory, ko izmantot (pupu) serializatoru konstruēšanai. |
| setSerializerProvider(DefaultSerializerProvider p) | ObjectMapper | To izmanto, lai iestatītu SerializerProvider gadījumu “projektu”, lai to izmantotu kā pamatu faktiskajiem nodrošinātāja gadījumiem, ko izmantot, lai apstrādātu JsonSerializer gadījumu kešatmiņu. |
| setSubtypeResolver(SubtypeResolver str) | ObjectMapper | To izmanto, lai iestatītu lietojamo pielāgoto apakštipu risinātāju. |
| setTimeZone(TimeZone tz) | ObjectMapper | To izmanto, lai ignorētu noklusējuma laika joslu, ko izmantot formatēšanai. |
| setTypeFactory(TypeFactory f) | ObjectMapper | To izmanto, lai ignorētu TypeFactory gadījumu, ko izmanto pašreizējais kartētājs. |
setVisibility (PropertyAccessor for Method, JsonAutoDetect.Visibility redzamība)
| ObjectMapper | SetVisibility() un tā varianti tiek izmantoti, lai iestatītu pašlaik konfigurēto VisibilityChecker. Atgrieztā ObjectMapper instance tiek izmantota, lai pārbaudītu, vai doto rekvizītu elementu var noteikt automātiski. |
| treeAsTokens(TreeNode n) | JsonParser | To izmanto, lai izveidotu JsonParser no JSON koka attēlojuma. |
| treeToValue (TreeNode n, klases vērtības veids) | T | To izmanto, lai saistītu datus, ko satur JSON koks, ar noteiktu vērtību tipu. |
| versija () | Versija | To izmanto, lai iegūtu informāciju par versiju, kas tiek glabāta un lasīta no burkas, kurā ir šī klase. |
rakstnieks()
| ObjectWriter | Rakstīt() un tā variācijas tiek izmantotas, lai izveidotu ObjectWriter ar noklusējuma iestatījumiem, ņemot vērā Base64 kodējuma variantu Base64 kodētiem bināriem datiem, rakstzīmju izņemšanas informāciju izvadei, noklusējuma atribūtus, DateFormat, filtra nodrošinātāju, shēmas objektu JsonGenerator, ko izmanto satura rakstīšanai, skaists printeris atkāpei vai iespējota funkcija. |
| writerFor(klases saknes tips) - | ObjectWriter | To izmanto, lai izveidotu ObjectWriter objektu serializēšanai, izmantojot noteiktu saknes tipu, nevis faktisko izpildlaika vērtības veidu. |
| writerFor(JavaType rootType) | ObjectWriter | To izmanto, lai izveidotu ObjectWriter objektu serializēšanai, izmantojot noteiktu saknes tipu, nevis faktisko izpildlaika vērtības veidu. |
| writerFor(TypeReference rootType) | ObjectWriter | To izmanto, lai izveidotu ObjectWriter objektu serializēšanai, izmantojot noteiktu saknes tipu, nevis faktisko izpildlaika vērtības veidu. |
| rakstnieksWithDefaultPrettyPrinter() | ObjectWriter | Tā ir rūpnīcas metode, ko izmanto, lai izveidotu ObjectWriter objektu serializēšanai, izmantojot diezgan noklusējuma printeri atkāpei. |
rakstnieksWithType (klases saknes tips)
| ObjectWriter | Šīs metodes tiek amortizētas, un to vietā mēs izmantojam metodi writerFor(TypeReference). |
| writerWithView (klases serializācijas skats) | ObjectWriter | Tā ir rūpnīcas metode, kas tiek izmantota, lai izveidotu ObjectWriter objektu serializēšanai, izmantojot norādīto JSON skatu. |
| writeTree (JsonGenerator jgen, JsonNode rootNode) | nederīgs | To izmanto nodrošinātā JSON koka serializēšanai, izmantojot doto JsonGenerator. |
| writeValue (faila rezultātsFails, objekta vērtība) | nederīgs | To izmanto, lai serializētu Java vērtību kā JSON izvadi un ierakstītu to dotajā failu. |
| writeValue (JsonGenerator g, objekta vērtība). | nederīgs | To izmanto, lai serializētu Java vērtības kā JSON izvadi, izmantojot doto JsonGenerator. |
| writeValue (OutputStream out, Objekta vērtība) | nederīgs | To izmanto, lai serializētu Java vērtību kā JSON izvadi, izmantojot doto OutputStream. |
| writeValue (Writer w, objekta vērtība) | nederīgs | To izmanto, lai serializētu Java vērtības kā JSON izvadi, izmantojot doto Rakstnieks. |
| writeValueAsBytes (objekta vērtība) | baits[] | To izmanto Java vērtību serializēšanai kā baitu masīvu. |
| writeValueAsString(objekta vērtība) | Stīga | To izmanto Java vērtību serializēšanai kā virkni. |
DžeksonsPiemērs.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+ ' ]'; } } Izvade: