Trieda ObjectMapper v Jacksone

Trieda ObjectMapper v Jacksone

ObjectMapper je jednou z najdôležitejších dostupných tried Jackson knižnica. Používa sa na čítanie a zápis údajov JSON. Je zodpovedný za čítanie údajov z alebo do súboru POJO a do az modelu stromu JSON.

Trieda ObjectMapper má nasledujúce vlastnosti:

  1. Podporuje pokročilé koncepty ako napr Polymorfizmus a Rozpoznávanie objektov.
  2. Je veľmi prispôsobiteľný na prácu s rôznymi štýlmi obsahu JSON.
  3. Funguje ako továreň na zálohu ObjectReader a ObjectWriter triedy.

Trieda ObjectMapper je deklarovaná nasledujúcim spôsobom:



 public class ObjectMapper extends ObjectCodec implements Versioned, Serializable  

Vnorené triedy

Nasledujúca tabuľka definuje triedy, ktoré rozširujú triedu ObjectMapper alebo, povedzme, vnorené triedy triedy ObjectMapper.

Trieda Popis
DefaultTypeResolverBuilder Je to prispôsobené TypeResolverBuilder trieda, ktorá sa používa na získanie zostavovateľov prekladačov typov, s ktorými môžeme použiť „predvolené písanie“.
Predvolené zadávanie Na určenie druhu typov sa používajú enumerácie s metódou enableDefaultTyping().

Teraz pochopme polia, konštruktory a metódy triedy ObjectMapper:

Polia triedy ObjectMapper

protected DefaultDeserializationContext _deserializationContext

Je to kontextový objekt plánu, ktorý je uložený na umožnenie vlastných podtried.

protected DeserializationConfig _deserializationConfig

Je to konfiguračný objekt, ktorý sa používa na definovanie základných globálnych nastavení procesu de-serializácie.

chránená JsonFactory jsonFactory

Na vytvorenie inštancie JsonParser a JsonGenerator sa používa JsonFactory.

protected InjectableValues ​​_injectableValues

Ide o poskytovateľa, ktorý sa používa na vstrekovanie hodnôt do deserializovaných POJO.

chránený ConfigOverrides _propertyOverrides

Používa sa na prístup k aktuálne aktívnym prepísaniam konfigurácie podľa typu.

chránený SimpleMixInResolver _mixIns

Je to mapovanie, ktoré sa používa na definovanie spôsobu aplikácie zmiešaných anotácií. Mapovanie sa vykonáva nasledujúcim spôsobom:

kľúč: Ak chcete získať ďalšie anotácie, zadajte.

Hodnota: Typ, ktorý obsahuje anotácie na „zamiešanie“

protected Set _registeredModuleTypes

Je to množina, ktorá definuje množinu typov modulov, ktoré boli zaregistrované.

chránená SerializationConfig _serializationConfig

Je to tiež konfiguračný objekt, ktorý sa používa na definovanie základných globálnych nastavení procesu serializácie.

chránená ConcurrentHashMap _rootDeserializers

Je to mapa, ktorá sa používa na sledovanie koreňových de-serializátorov. Je to mapa hlavnej úrovne.

chránená SerializerFactory _serializerFactory

Je to továreň, ktorá sa používa na konštrukciu serializátorov.

chránený SubtypeResolver _subtypeResolver

Slúži na registráciu podtypov a ich riešenie pre nad/podtypy podľa potreby.

chránený TypeFactory _typeFactory

Je to továreň, ktorá sa používa na vytváranie inštancií JavaType. Sú potrebné na to, aby moduly mohli pridať viac prispôsobených typov spracovania.

protected DefaultSerializerProvider _serializerProvider

Je to objekt, ktorý je zodpovedný za riadenie prístupu k serializátorom používaným na serializáciu.

chránené statické BaseSettings DEFAULT_BASE

Ide o základné nastavenia, ktoré zahŕňajú predvolené hodnoty používané pre všetky inštancie ObjectMapper.

Konštruktory triedy ObjectMapper

Existujú nasledujúce konštruktory triedy ObjectMapper:

Konštruktér Popis
ObjectMapper() Je to predvolený konštruktor používaný na zostavenie inštancie, ktorá používa predvolené nastavenie JsonFactory, SerializerProvider, a BeanSerializerFactory.
ObjectMapper (továreň JsonFactory) Používa sa na zostavenie inštancie, ktorá používa danú JsonFactory. Na konštrukciu sa používa daná JsonFactory JsonParsers a/alebo JsonGenerators.
ObjectMapper (továreň JsonFactory, poskytovateľ SerializerProvider1, DeserializerProvider provider2) Používa sa na zostavenie inštancie, ktorá používa dané JsonFactory, SerializerProvider, a DeserializerProvider. Na konštrukciu sa používa daná JsonFactory JsonParsers a/alebo JsonGenerators.
chránený objektový mapovač (mapovač objektov) Je to kopírovací konštruktor na podporu copy().

Metódy triedy ObjectMapper

Trieda ObjectMapper definuje nasledujúce metódy:

Metóda Typ návratu Popis
_checkInvalidCopy (exp. triedy) neplatné Používa sa na kontrolu neplatnej kópie.
_configAndWriteValue(JsonGenerator g, hodnota objektu) neplatné Používa sa na konfiguráciu generátora, ak je to potrebné, a na vykonanie funkcie zápisu.
_convert(Object fromValue, JavaType toValueType) Objekt Používa sa na získanie skutočnej implementácie konverzie. Tu sa pre kód nepoužívajú metódy čítania a zápisu.
_initForReading(JsonParser p) JsonToken Používa sa na overenie, či je daný syntaktický analyzátor pripravený na čítanie obsahu pre dátovú väzbu alebo nie.
_findRootDeserializer(Ctxt DeserializationContext, JavaType valueType) JsonDeserializer Pre odovzdanú hodnotu na koreňovej úrovni, ak chceme nájsť de-serializátor, použijeme túto metódu.
_newReader(konfigurácia DeserializationConfig)
Podobná metóda:
  1. _newReader(konfigurácia DeserializationConfig, JavaType valueType, Object valueToUpdate, FormatSchema schéma, InjectableValues ​​injectableValues)
ObjectReader Je to továrenská metóda, t.j. používaná na získanie inštancií ObjectReader správneho podtypu. Ak chcete použiť túto metódu, je potrebné, aby podtriedy boli prepísané.
_newWriter(konfigurácia SerializationConfig)
Podobné metódy:
  1. _newWriter(konfigurácia SerializationConfig, schéma FormatSchema)
  2. _newWriter(konfigurácia SerializationConfig, JavaType rootType, PrettyPrinter pp)
ObjectWriter Je to továrenská metóda, t.j. používaná na získanie inštancií ObjectWriter správneho podtypu. Ak chcete použiť túto metódu, je potrebné, aby podtriedy boli prepísané.
_readValue(DeserializationConfig cfg, JsonParser p, JavaType valueType) Objekt Používa sa na získanie objektu, ktorý definuje čítanie hodnoty a operáciu viazania.
_serializerProvider(konfigurácia SerializationConfig) DefaultSerializerProvider Je to prepísateľná pomocná metóda, ktorá sa používa na zostavenie SerializerProvider.
acceptJsonFormatVisitor (typ triedy, návštevník JsonFormatVisitorWrapper)
Podobná metóda:
  1. acceptJsonFormatVisitor (typ JavaType, návštevník JsonFormatVisitorWrapper)
neplatné
neplatné
Ak chceme so zadaným návštevníkom navštíviť typovú hierarchiu konkrétneho typu, použijeme túto metódu.
addHandler(DeserializationProblemHandler h) ObjectMapper Na zvládnutie špecifikovaných problémov počas de-serializácie používame špecifikovaný DeserializationProblemHandler a na pridanie handlera používame túto metódu.
addMixIn(cieľ triedy, zdroj mixu triedy) ObjectMapper Aby sme mohli použiť zmiešanú anotáciu pre špecifikovanú rozširujúcu triedu alebo rozhranie, používame túto metódu na jej pridanie.
canDeserialize (typ JavaType) Boolean Používa sa na kontrolu, či mapovač môže zrušiť serializáciu objektu určeného typu alebo nie.
canDeserialize (typ Java, príčina AtomicReference) Boolean Je to podobné ako v predchádzajúcej metóde. Jediný rozdiel je v tom, že dokáže vrátiť vrhací prvok, ktorý bol vyhodený v čase konštrukcie serializátora. Vrhač je možné použiť na zistenie skutočného problému.
canSerialize (typ triedy) Boolean Používa sa na kontrolu, či mapovač dokáže serializovať objekt určeného typu alebo nie.
canSerialize (typ triedy, príčina AtomicReference) Boolean Je to podobné ako v predchádzajúcej metóde. Jediný rozdiel je v tom, že dokáže vrátiť vrhací prvok, ktorý bol vyhodený v čase konštrukcie serializátora. Vrhač je možné použiť na zistenie skutočného problému.
clearProblemHandlers() ObjectMapper Je to jedna z metód, ktorá sa používa na odstránenie všetkých inštancií DeserializationProblemHandlers z mapovača, ktoré sú zaregistrované.
configure(Feature deserialization f, booleovský stav)
podobné metódy:
  1. configure(JsonGenerator.Feature f, booleovský stav)
  2. configure(JsonParser.Feature f, booleovský stav)
  3. configure(MapperFeature f, booleovský stav)
  4. configure(SerializationFeature f, booleovský stav)
ObjectMapper Používa sa na zmenu stavu zapnutej/vypnutej de-serializácie, generátora Json, JsonParser, mapovača alebo funkcie serializácie pre mapovač objektov, inštancie generátora, inštancie syntaktického analyzátora, inštanciu mapovača alebo mapovač objektov.
constructType (Typ t) JavaType Ak chceme vytvoriť JavaType z daného typu bez explicitného kontextu, použijeme túto metódu.
convertValue(Object fromValue, Class toValueType)
Podobné metódy:
  1. convertValue(Object fromValue, JavaType toValueType)
T Ak chceme vykonať dvojkrokový prevod danej hodnoty na inštanciu daného typu hodnoty, použijeme metódu converValue().
createArrayNode() ArrayNode Používa sa na vytvorenie ArrayNode.
defaultClassIntrospector() ClassIntrospector Ak chceme použiť predvolený ClassIntrospector, použijeme na jeho konštrukciu pomocnú metódu Overridable.
zakázať (funkcia DeserializationFeature)
Podobné metódy:
  1. zakázať (prvá funkcia deserializácie, funkcia deserializácie... f)
  2. vypnúť (funkcie JsonGenerator.Feature...)
  3. vypnúť (funkcie JsonParser.Feature...)
  4. vypnúť (MapperFeature... f)
  5. zakázať (Feature serializácie f)
  6. zakázať (prvá funkcia Serialization, funkcia Serialization... f)
ObjectMapper Používa sa na deaktiváciu danej DeserializationConfig, JsonGenerator.Features pre inštancie syntaktického analyzátora, JsonParser.Features pre inštancie syntaktického analyzátora mapovača objektov.
disableDefaultTyping() ObjectMapper Mnohokrát musíme zakázať automatické zahrnutie informácií o type a na tento účel používame túto metódu.
povoliť (funkcia DeserializationFeature)
  1. povoliť (prvá funkcia deserializácie, funkcia deserializácie... f)
  2. povoliť (funkcie JsonGenerator.Feature...)
    povoliť (funkcie JsonParser.Feature...)
  3. povoliť (MapperFeature... f)
  4. povoliť (Funkcia serializácie f)
  5. povoliť (prvá funkcia Serialization, funkcia Serialization... f)
ObjectMapper Používa sa na povolenie danej DeserializationConfig, JsonGenerator.Features pre inštancie analyzátora, JsonParser.Features pre inštancie analyzátora mapovača objektov.
enableDefaultTyping()
Podobné metódy:
  1. enableDefaultTyping(ObjectMapper.DefaultTyping dti)
  2. enableDefaultTyping(ObjectMapper.DefaultTyping použiteľnosť, JsonTypeInfo.As includeAs)
  3. enableDefaultTypingAsProperty(ObjectMapper.DefaultTyping applicability, String propertyName)
ObjectMapper Aby sme použili automatické zahrnutie typových informácií na de-serializáciu polymorfných typov, používame túto metódu, aby sme to umožnili.
findAndRegisterModules() ObjectMapper Je podobná metóde mapper.registerModules(mapper.findModules()).
findModules()
Podobné metódy:
  1. findModules(trieda nakladača trieda načítavanie)
Zoznam Používa sa na nájdenie dostupných metód. Metóda využíva zariadenie JDK ServiceLoader s modulom poskytovaným SPI.
getDateFormat() Formát dátumu Používa sa na získanie formátu dátumu.
getDeserializationConfig() DeserializationConfig Používa sa na získanie zdieľaného predvoleného objektu DeserializationConfig. Vrátený objekt definuje konfiguračné nastavenia pre de-serializáciu.
getDeserializationContext() Kontext deserializácie Používa sa na získanie aktuálneho kontextu deserializácie.
getFactory() JsonFactory Ak mapovač potrebuje skonštruovať Json syntaktický analyzátor a generátory, potrebuje json factory a na to, aby sme to dosiahli, používame metódu getFactory().
getInjectableValues() InjectableValues Používa sa na získanie injekčných hodnôt.
getJsonFactory() JsonFactory Je to zastaraná metóda na získanie továrne Json.
getNodeFactory() JsonNodeFactory Používa sa na získanie JsonNodeFactory, ktorú používa mapovač v čase priameho vytvárania koreňových inštancií JsonNode pre stromy.
getPropertyNamingStrategy() PropertyNamingStrategy Ako už názov napovedá, používa sa na stratégiu pomenovania nehnuteľnosti.
getSerializationConfig() SerializationConfig Používa sa na získanie zdieľaného predvoleného objektu SerializationConfig. Vrátený objekt definuje konfiguračné nastavenia pre serializáciu.
getSerializerFactory() SerializerFactory Používa sa na získanie aktuálneho SerializerFactory.
getSerializerProvider() SerializerProvider Je to prístupový objekt pre továreň, ktorý sa používa na vytváranie inštancií volaním DefaultSerializerProvider.createInstance(SerializationConfig, SerializerFactory).
getSerializerProviderInstance() SerializerProvider Je to prístupový objekt, ktorý sa používa na vytvorenie a vrátenie inštancie SerializerProvider, ktorú môžeme použiť na prístup k serializátorom.
getSubtypeResolver() SubtypeResolver Používa sa na prístup k používanému prekladaču podtypov.
getTypeFactory() TypeFactory Je to prístupový objekt, ktorý sa používa na získanie inštancie aktuálne nakonfigurovanej TypeFactory.
getVisibilityChecker() VisibilityChecker Používa sa na prístup k aktuálne nakonfigurovanej kontrole viditeľnosti.
isEnabled(DeserializationFeature f)
Podobné metódy:
  1. isEnabled(JsonFactory.Feature f)
  2. isEnabled(JsonGenerator.Feature f)
  3. isEnabled(JsonParser.Feature f)
  4. isEnabled(MapperFeature f)
  5. isEnabled(SerializationFeature f)
Boolean Metóda isEnable() a jej variácie sa používajú na kontrolu, či je daná funkcia špecifická pre deserializáciu, JsonFactory, JsonGenerator, JsonParser, Mapper alebo Serialization povolená alebo nie.
mixInCount() int Používa sa na získanie počtu mixIn.
čitateľ()
Podobné metódy:
  1. čítačka (Base64Variant predvolenáBase64)
  2. čítačka (typ triedy)
  3. čitateľ(ContextAttributes attrs)
  4. čítačka (funkcia DeserializationFeature)
  5. čitateľ (prvá funkcia deserializácie, funkcia deserializácie... iné)
  6. čítačka (schéma FormatSchema)
  7. čitateľ (InjectableValues ​​injectableValues)
  8. čítačka (typ Java)
  9. čitateľ (JsonNodeFactory f)
  10. čítačka (typ referencie typu)
ObjectReader Metóda reader() a jej variácie sú továrenské metódy, ktoré sa používajú na vytvorenie inštancie ObjectReader. Na základe požiadavky môžeme odovzdať variant kódovania Base64 pre binárne dáta kódované pomocou Base64, predvolené atribúty, povolené funkcie, injektovateľné hodnoty, JsonNodeFactory na vytváranie stromov JSON.
readerFor (typ triedy) ObjectReader Je to továrenská metóda, ktorá sa používa na zostavenie ObjectReadera a umožňuje operácie čítania alebo aktualizácie pre inštancie špecifikovaného typu.
readerFor (typ Java) ObjectReader Je to továrenská metóda, ktorá sa používa na zostavenie ObjectReadera a umožňuje operácie čítania alebo aktualizácie pre inštancie špecifikovaného JavaType.
readerFor (typ referencie typu) ObjectReader Je to továrenská metóda, ktorá sa používa na zostavenie ObjectReadera a umožňuje operácie čítania alebo aktualizácie pre inštancie daného TypeReference.
readerForUpdating(Object valueToUpdate) ObjectReader Je to továrenská metóda, ktorá sa používa na zostavenie ObjectReadera umožňujúce operácie aktualizácie pre daný objekt.
readerWithView (zobrazenie triedy) ObjectReader Je to továrenská metóda, ktorá sa používa na konštrukciu ObjectReader, čo umožňuje
de-serializácia objektov s daným JSON View.
readTree(byte[] content)
  1. readTree (súbor súboru)
  2. readTree (InputStream in)
  3. readTree(JsonParser p)
  4. readTree(Reader r)
  5. readTree (obsah reťazca)
  6. readTree (zdroj URL)
JsonNode
ALEBO
T
ReadTree() a jej variácie sa používajú na de-serializáciu obsahu JSON ako stromu vyjadreného pomocou sady inštancií JsonNode.
readValue(byte[] src, Trieda valueType)
Podobné metódy
  1. readValue(byte[] src, int offset, int len, JavaType valueType)
  2. readValue(byte[] src, int offset, int dĺžka, Class valueType)
  3. readValue(byte[] src, JavaType valueType)
  4. readValue(DataInput src, Class valueType)
  5. readValue (zdroj súboru, trieda valueType)
  6. readValue(DataInput src, JavaType valueType)
  7. readValue (zdroj súboru, JavaType valueType)
  8. readValue(Súbor zdroj, 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, trieda valueType)
  15. readValue(JsonParser p, ResolvedType valueType)
  16. readValue(byte[] src, int offset, int dĺžka, TypeReference valueTypeRef)
  17. readValue(Reader src, TypeReference valueTypeRef)
  18. readValue(JsonParser p, TypeReference valueTypeRef)
  19. readValue(Reader src, JavaType valueType)
  20. readValue(obsah reťazca, hodnota TypeReferenceTypeRef)
  21. readValue(Reader src, Class valueType)
  22. readValue(obsah reťazca, trieda valueType)
  23. readValue(obsah reťazca, JavaType valueType)
  24. readValue(URL src, TypeReference valueTypeRef)readValue(URL src, Class valueType)
  25. readValue(URL src, JavaType valueType)
T
ALEBO
MappingIterator
ReadValue() a jej variácie sa používajú na de-serializáciu obsahu JSON
  1. Z daného súboru do daného typu Java, do nekontajnerového typu alebo do referencie typu Java, ktorému sa odovzdáva ako argument.
  2. Z daného obsahu JSON do reťazca String.
  3. Z daného zdroja do daného typu Java.
Variácie sa používajú na základe rôznych požiadaviek.
readValues(JsonParser p, trieda valueType)
Podobné metódy:
  1. readValues(JsonParser p, JavaType valueType)
  2. readValues(JsonParser p, ResolvedType valueType)
  3. readValues(JsonParser p, TypeReferencevalueTypeRef)
MappingIterator ReadValues() a jej variácie sa používajú na čítanie sekvencie objektov z prúdu syntaktického analyzátora.
registerModule (modul modulu)
Podobné metódy:
  1. registerModules (opakovateľné moduly)
  2. registerModules(Modul... moduly)
ObjectMapper RegisterModule() a jeho variácie sa používajú na registráciu modulu, ktorý má schopnosť rozšíriť funkčnosť poskytovanú mapovačom.
registerSubtypes(NamedType... typy) neplatné Slúži na registráciu danej triedy ako podtypu. Týmto spôsobom môže rozlíšenie založené na názve typu spájať supertypy s podtypmi.
setAnnotationIntrospector(AnnotationIntrospector ai) ObjectMapper Používa sa na nastavenie AnnotationIntrospector, ktorý používa inštancia mapovača na serializáciu aj de-serializáciu.
setAnnotationIntrospectors(AnotationIntrospector serializerAI, AnnotationIntrospector deserializerAI) ObjectMapper Používa sa na zmenu inštancie AnnotationIntrospector, ktorú používa aktuálna inštancia mapovača na serializáciu a de-serializáciu.
setBase64Variant(Base64Variant v) ObjectMapper Používa sa na konfiguráciu predvoleného Base64Variant, ktorý budú používať bajt[] serializátory a de-serializátory.
setConfig(Konfigurácia DeserializationConfig) ObjectMapper Túto metódu používame na vykonanie prepísania základného objektu DeserializationConfig Object.
setConfig(SerializationConfig config) ObjectMapper Túto metódu používame na vykonanie prepísania základného objektu SerializationConfig s konfiguračnými nastaveniami špecifickými pre serializáciu.
setDateFormat(DateFormat dateFormat) ObjectMapper Používa sa na konfiguráciu predvoleného formátu DateFormat tak, aby sa používal v čase serializácie časových hodnôt ako reťazcov alebo de-serializácie z reťazcov JSON.
setDefaultPrettyPrinter(PrettyPrinter pp) ObjectMapper Používa sa na určenie tlačiarne PrettyPrinter, ktorá sa má používať, keď je povolená „predvolená tlač peknej tlače“.
setDefaultTyping(TypeResolverBuilder typer) ObjectMapper Používa sa na umožnenie automatického zahrnutia informácií o type.
setHandlerInstantiator(HandlerInstantiator ahoj) Objekt Používa sa na konfiguráciu HandlerInstantiator na vytváranie inštancií handlerov.
setFilterProvider(FilterProvider filterProvider) ObjectMapper Používa sa na konfiguráciu aktuálneho mapovača tak, aby používal zadaný FilterProvider na mapovanie ID filtra na skutočné inštancie filtra.
setInjectableValues(InjectableValues ​​injectableValues) ObjectMapper Používa sa na konfiguráciu InjectableValues, ktorá sa používa na nájdenie hodnôt na injekciu.
setLocale(Local l) ObjectMapper Používa sa na prepísanie predvoleného miestneho nastavenia na formátovanie.
setMixInResolver(rozlíšenie ClassIntrospector.MixInResolver) ObjectMapper Túto metódu používame na zadanie daného resolvera na nájdenie zmiešaných tried, ktoré sa majú použiť, pričom prepíšeme priamo pridané mapovania.
setMixInAnnotations(Map sourceMixins) neplatné Je to odpisovaná metóda na definovanie zmiešanej anotácie.
setNodeFactory(JsonNodeFactory f) ObjectMapper Používa sa na špecifikáciu JsonNodeFactory, ktorá sa má použiť na vytvorenie uzlov stromu koreňovej úrovne.
setMixIns(Map sourceMixins) ObjectMapper Používa sa na definovanie zmiešaných anotácií, ktoré sa majú použiť na rozšírenie anotácií, ktoré majú spracovateľné triedy.
setPropertyInclusion(JsonInclude.Value incl) ObjectMapper Používa sa na nastavenie predvolenej stratégie zahrnutia vlastností POJO pre serializáciu.
setPropertyNamingStrategy(PropertyNamingStrategy s) ObjectMapper Používa sa na nastavenie stratégie pomenovania vlastných vlastností, ktorá sa má použiť.
setSerializerFactory(SerializerFactory f) ObjectMapper Používa sa na nastavenie konkrétnej SerializerFactory, ktorá sa má použiť na vytváranie (bean) serializátorov.
setSerializerProvider(DefaultSerializerProvider p) ObjectMapper Používa sa na nastavenie „návrhu“ inštancie SerializerProvider na jej použitie ako základ pre skutočné inštancie poskytovateľa, ktoré sa majú použiť na spracovanie ukladania inštancií JsonSerializer do vyrovnávacej pamäte.
setSubtypeResolver(SubtypeResolver str) ObjectMapper Používa sa na nastavenie vlastného prekladača podtypov, ktorý sa má použiť.
setTimeZone(TimeZone tz) ObjectMapper Používa sa na prepísanie predvoleného časového pásma, ktoré sa má použiť na formátovanie.
setTypeFactory(TypeFactory f) ObjectMapper Používa sa na prepísanie inštancie TypeFactory, ktorú používa aktuálny mapovač.
setVisibility(PropertyAccessor forMethod, viditeľnosť JsonAutoDetect.Visibility)
  1. setVisibility(VisibilityChecker vc)
  2. setVisibilityChecker(VisibilityChecker vc)
ObjectMapper SetVisibility() a jej variácie sa používajú na nastavenie aktuálne nakonfigurovaného VisibilityCheckera. Vrátená inštancia ObjectMapper sa používa na kontrolu, či daný prvok vlastnosti môže byť automaticky detekovaný alebo nie.
treeAsTokens(TreeNode n) JsonParser Používa sa na zostavenie JsonParser z reprezentácie stromu JSON.
treeToValue(TreeNode n, Trieda valueType) T Používa sa na spojenie údajov, ktoré daný strom JSON obsahuje, do konkrétneho typu hodnoty.
verzia() Verzia Používa sa na získanie informácií o verzii uložených v jar, ktorý obsahuje túto triedu, a na čítanie z nej.
spisovateľ()
  1. spisovateľ(Base64Variant predvolenáBase64)
  2. spisovateľ (Útek postavy uniká)
  3. spisovateľ(ContextAttributes attrs)
  4. spisovateľ (DateFormat df)
  5. spisovateľ(FilterProvider filterProvider)
  6. spisovateľ (schéma FormatSchema)
  7. spisovateľ (PrettyPrinter pp)
  8. spisovateľ (funkcia SerializationFeature)
  9. spisovateľ (prvá funkcia serializácie, funkcia serializácie... iné)
ObjectWriter Write() a jeho variácie sa používajú na zostavenie ObjectWriter s predvolenými nastaveniami, daný variant kódovania Base64 pre binárne dáta kódované Base64, podrobnosti o kódovaní znakov pre výstup, predvolené atribúty, DateFormat, poskytovateľ filtra, objekt schémy pre JsonGenerator používaný na písanie obsahu, pekná tlačiareň na odsadenie alebo povolenú funkciu.
writeFor(Class rootType) - ObjectWriter Používa sa na zostavenie ObjectWriter na serializáciu objektov pomocou špecifikovaného koreňového typu namiesto skutočného typu hodnoty za behu.
writeFor(JavaType rootType) ObjectWriter Používa sa na zostavenie ObjectWriter na serializáciu objektov pomocou špecifikovaného koreňového typu namiesto skutočného typu hodnoty za behu.
writeFor(TypeReference rootType) ObjectWriter Používa sa na zostavenie ObjectWriter na serializáciu objektov pomocou špecifikovaného koreňového typu namiesto skutočného typu hodnoty za behu.
spisovateľWithDefaultPrettyPrinter() ObjectWriter Je to továrenská metóda, ktorá sa používa na zostavenie ObjectWriter na serializáciu objektov pomocou pekne predvolenej tlačiarne na odsadenie.
WriteWithType (RootType triedy)
  1. WriteWithType (RootType triedy)
  2. writeWithType(TypeReference rootType)
ObjectWriter Tieto metódy sa odpisujú a namiesto nich používame metódu writeFor(TypeReference).
writeWithView(Class serializationView) ObjectWriter Je to továrenská metóda, ktorá sa používa na zostavenie ObjectWriter na serializáciu objektov pomocou špecifikovaného zobrazenia JSON.
writeTree(JsonGenerator jgen, JsonNode rootNode) neplatné Používa sa na serializáciu poskytnutého stromu JSON pomocou daného JsonGeneratora.
writeValue(File resultFile, Object value) neplatné Používa sa na serializáciu hodnoty Java ako výstup JSON a jej zápis do daného súbor.
writeValue(JsonGenerator g, Hodnota objektu). neplatné Používa sa na serializáciu hodnôt Java ako výstupu JSON pomocou daného JsonGenerator.
writeValue(OutputStream out, Hodnota objektu) neplatné Používa sa na serializáciu hodnoty Java ako výstupu JSON pomocou daného OutputStream.
writeValue(Writer w, Hodnota objektu) neplatné Používa sa na serializáciu hodnôt Java ako výstupu JSON pomocou daného Spisovateľ.
writeValueAsBytes (hodnota objektu) bajt[] Používa sa na serializáciu hodnôt Java ako bajtové pole.
writeValueAsString(hodnota objektu) Reťazec Používa sa na serializáciu hodnôt Java ako reťazec.

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

Výkon:

Trieda ObjectMapper v Jacksone

Najlepšie Články

Kategórie

Zaujímavé Články