Třída ObjectMapper v Jacksonu

Třída ObjectMapper v Jacksonu

ObjectMapper je jednou z nejdůležitějších dostupných tříd Jackson knihovna. Používá se ke čtení a zápisu dat JSON. Je zodpovědný za čtení dat z nebo do souboru POJO a do az modelu stromu JSON.

Třída ObjectMapper má následující vlastnosti:

  1. Podporuje pokročilé koncepty jako např Polymorfismus a Rozpoznávání objektů.
  2. Je velmi přizpůsobitelný pro práci s různými styly obsahu JSON.
  3. Funguje jako továrna na zálohu ObjectReader a ObjectWriter třídy.

Třída ObjectMapper je deklarována následujícím způsobem:

 public class ObjectMapper extends ObjectCodec implements Versioned, Serializable  

Vnořené třídy

Následující tabulka definuje třídy, které rozšiřují třídu ObjectMapper nebo, řekněme, vnořené třídy třídy ObjectMapper.

Třída Popis
DefaultTypeResolverBuilder Je to přizpůsobené TypeResolverBuilder třída, která se používá k získání stavitelů překladačů typů, se kterými můžeme použít 'výchozí psaní'.
Výchozí typování Aby bylo možné určit druh typů, používají se výčty s metodou enableDefaultTyping().

Pojďme nyní pochopit pole, konstruktory a metody třídy ObjectMapper:

Pole třídy ObjectMapper

protected DefaultDeserializationContext _deserializationContext

Je to kontextový objekt plánu, který je uložen pro umožnění vlastních podtříd.

protected DeserializationConfig _deserializationConfig

Jedná se o konfigurační objekt, který se používá pro definování základních globálních nastavení procesu de-serializace.

chráněná JsonFactory jsonFactory

K vytvoření instance JsonParser a JsonGenerator se používá JsonFactory.

chráněné InjectableValues ​​_injectableValues

Jedná se o poskytovatele, který se používá pro vkládání hodnot do deserializovaných POJO.

chráněné ConfigOverrides _propertyOverrides

Používá se pro přístup k aktuálně aktivním přepsáním konfigurace podle typu.

chráněný SimpleMixInResolver _mixIns

Je to mapování, které se používá k definování způsobu aplikace smíšených anotací. Mapování se provádí následujícím způsobem:

Klíč: Zadejte, chcete-li získat další anotace.

Hodnota: Typ, který obsahuje poznámky k „vmíchání“

protected Set _registeredModuleTypes

Je to sada, která definuje sadu typů modulů, které byly zaregistrovány.

chráněná konfigurace SerializationConfig _serializationConfig

Je to také konfigurační objekt, který se používá k definování základních globálních nastavení procesu serializace.

chráněná ConcurrentHashMap _rootDeserializers

Je to mapa, která se používá ke sledování kořenových de-serializátorů. Je to mapa hlavní úrovně.

chráněná SerializerFactory _serializerFactory

Je to továrna, která se používá ke konstrukci serializátorů.

chráněný SubtypeResolver _subtypeResolver

Slouží k registraci podtypů a k jejich řešení pro nad/podtypy dle potřeby.

chráněná TypeFactory _typeFactory

Je to továrna, která se používá k vytváření instancí JavaType. Jsou vyžadovány, aby moduly mohly přidat další vlastní manipulaci s typy.

protected DefaultSerializerProvider _serializerProvider

Je to objekt, který je zodpovědný za správu přístupu k serializátorům používaným pro serializaci.

chráněné statické BaseSettings DEFAULT_BASE

Jedná se o základní nastavení, která zahrnují výchozí hodnoty používané pro všechny instance ObjectMapper.

Konstruktory třídy ObjectMapper

Existují následující konstruktory třídy ObjectMapper:

Konstruktér Popis
ObjectMapper() Je to výchozí konstruktor používaný k vytvoření instance, která používá výchozí JsonFactory, SerializerProvider, a BeanSerializerFactory.
ObjectMapper (továrna JsonFactory) Slouží ke konstrukci instance, která používá danou JsonFactory. Ke konstrukci se používá daná JsonFactory JsonParsers a/nebo JsonGenerators.
ObjectMapper (továrna JsonFactory, poskytovatel SerializerProvider1, DeserializerProvider poskytovatel2) Používá se ke konstrukci instance, která používá dané JsonFactory, SerializerProvider, a DeserializerProvider. Ke konstrukci se používá daná JsonFactory JsonParsers a/nebo JsonGenerators.
chráněný objektový mapovač (mapovač objektů) Je to kopírovací konstruktor pro podporu copy().

Metody třídy ObjectMapper

Třída ObjectMapper definuje následující metody:

Metoda Typ návratu Popis
_checkInvalidCopy (exp. třídy) prázdnota Používá se ke kontrole neplatné kopie.
_configAndWriteValue(JsonGenerator g, hodnota objektu) prázdnota V případě potřeby se používá pro konfiguraci generátoru a následné provedení funkce zápisu.
_convert(Object fromValue, JavaType toValueType) Objekt Používá se k získání skutečné implementace konverze. Zde se pro kód nepoužívají metody čtení a zápisu.
_initForReading(JsonParser p) JsonToken Slouží k ověření, zda je daný parser připraven ke čtení obsahu pro datovou vazbu či nikoliv.
_findRootDeserializer(ctxt DeserializationContext, JavaType valueType) Json Deserializer Pro předávanou hodnotu na kořenové úrovni, pokud chceme najít de-serializátor, použijeme tuto metodu.
_newReader(konfigurace DeserializationConfig)
Podobná metoda:
  1. _newReader(konfigurace DeserializationConfig, JavaType valueType, Object valueToUpdate, schéma FormatSchema, InjectableValues ​​injectableValues)
ObjectReader Je to tovární metoda, tj. používaná k získání instancí ObjectReaderu správného podtypu. Aby bylo možné použít tuto metodu, je nutné, aby podtřídy byly přepsány.
_newWriter(konfigurace SerializationConfig)
Podobné metody:
  1. _newWriter(konfigurace SerializationConfig, schéma FormatSchema)
  2. _newWriter(konfigurace SerializationConfig, JavaType rootType, PrettyPrinter pp)
ObjectWriter Je to tovární metoda, tj. používaná k získání instancí ObjectWriter správného podtypu. Aby bylo možné použít tuto metodu, je nutné, aby podtřídy byly přepsány.
_readValue(DeserializationConfig cfg, JsonParser p, JavaType valueType) Objekt Používá se k získání objektu, který definuje čtení hodnoty a operaci vazby.
_serializerProvider(konfigurace SerializationConfig) DefaultSerializerProvider Je to přepsatelná pomocná metoda, která se používá ke konstrukci SerializerProvider.
acceptJsonFormatVisitor (typ třídy, návštěvník JsonFormatVisitorWrapper)
Podobná metoda:
  1. acceptJsonFormatVisitor (typ JavaType, návštěvník JsonFormatVisitorWrapper)
prázdnota
prázdnota
Pokud chceme se zadaným návštěvníkem navštívit typovou hierarchii určitého typu, použijeme tuto metodu.
addHandler(DeserializationProblemHandler h) ObjectMapper Abychom zvládli specifikované problémy během de-serializace, používáme specifikovaný DeserializationProblemHandler a pro přidání handleru používáme tuto metodu.
addMixIn(cíl třídy, zdroj mixu třídy) ObjectMapper Abychom mohli použít smíšenou anotaci pro specifikovanou rozšiřující třídu nebo rozhraní, používáme tuto metodu k jejímu přidání.
canDeserialize (typ JavaType) Boolean Používá se ke kontrole, zda mapovač může de-serializovat objekt zadaného typu nebo ne.
canDeserialize (typ JavaType, příčina AtomicReference) Boolean Je to podobné jako u předchozí metody. Jediný rozdíl je v tom, že může vrátit vrhací prvek, který byl hozen v době konstrukce serializátoru. Vyhazovač lze použít k odhalení skutečného problému.
canSerialize (typ třídy) Boolean Používá se ke kontrole, zda mapovač může serializovat objekt zadaného typu nebo ne.
canSerialize (typ třídy, příčina AtomicReference) Boolean Je to podobné jako u předchozí metody. Jediný rozdíl je v tom, že může vrátit vrhací prvek, který byl hozen v době konstrukce serializátoru. Vyhazovač lze použít k odhalení skutečného problému.
clearProblemHandlers() ObjectMapper Je to jedna z metod, která se používá k odstranění všech instancí DeserializationProblemHandlers z mapovače, které jsou registrované.
configure(Feature deserialization f, booleovský stav)
podobné metody:
  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žívá se ke změně stavu zapnuté/vypnuté deserializace, generátoru Json, JsonParser, mapovače nebo funkce serializace pro mapovač objektů, instance generátoru, instance analyzátoru, instanci mapovače nebo mapovač objektů.
konstruktTyp (Typ t) JavaType Pokud chceme sestavit JavaType z daného typu bez explicitního kontextu, použijeme tuto metodu.
convertValue(Object fromValue, Class toValueType)
Podobné metody:
  1. convertValue(Object fromValue, JavaType toValueType)
T Pokud chceme provést dvoukrokový převod dané hodnoty na instanci daného typu hodnoty, použijeme metodu converValue().
createArrayNode() ArrayNode Používá se k vytvoření ArrayNode.
defaultClassIntrospector() ClassIntrospector Pokud chceme použít výchozí ClassIntrospector, použijeme pro jeho konstrukci pomocnou metodu Overridable.
zakázat (funkce DeserializationFeature)
Podobné metody:
  1. zakázat (nejprve funkce deserializace, funkce deserializace... f)
  2. zakázat (funkce JsonGenerator.Feature...)
  3. zakázat (funkce JsonParser.Feature...)
  4. zakázat (MapperFeature... f)
  5. zakázat (Funkce serializace f)
  6. zakázat (nejprve funkce Serialization, funkce Serialization... f)
ObjectMapper Používá se k deaktivaci dané DeserializationConfig, JsonGenerator.Features pro instance analyzátoru, JsonParser.Features pro instance analyzátoru mapovače objektů.
disableDefaultTyping() ObjectMapper Mnohokrát potřebujeme zakázat automatické zahrnutí informací o typu a pro tento účel používáme tuto metodu.
povolit (funkce DeserializationFeature)
  1. povolit (nejprve funkce deserializace, funkce deserializace... f)
  2. povolit (JsonGenerator.Feature... funkce)
    povolit (funkce JsonParser.Feature...)
  3. povolit (MapperFeature... f)
  4. povolit (Funkce serializace f)
  5. povolit (První funkce Serialization, Funkce Serialization... f)
ObjectMapper Používá se k povolení dané DeserializationConfig, JsonGenerator.Features pro instance analyzátoru, JsonParser.Features pro instance analyzátoru mapovače objektů.
enableDefaultTyping()
Podobné metody:
  1. enableDefaultTyping(ObjectMapper.DefaultTyping dti)
  2. enableDefaultTyping(Použitelnost ObjectMapper.DefaultTyping, JsonTypeInfo.As includeAs)
  3. enableDefaultTypingAsProperty(ObjectMapper.DefaultTyping applicability, String propertyName)
ObjectMapper Abychom mohli využít automatické zahrnutí typových informací pro de-serializaci polymorfních typů, používáme tuto metodu, abychom to umožnili.
findAndRegisterModules() ObjectMapper Je podobná metodě mapper.registerModules(mapper.findModules()).
findModules()
Podobné metody:
  1. findModules(ClassLoader classLoader)
Seznam Používá se k nalezení dostupných metod. Metoda využívá zařízení JDK ServiceLoader s modulem SPI.
getDateFormat() Datový formát Slouží k získání formátu data.
getDeserializationConfig() DeserializationConfig Používá se k získání sdíleného výchozího objektu DeserializationConfig. Vrácený objekt definuje konfigurační nastavení pro de-serializaci.
getDeserializationContext() Kontext deseralizace Používá se k získání aktuálního DeserializationContext.
getFactory() JsonFactory Pokud mapovač potřebuje zkonstruovat Json analyzátor a generátory, potřebuje json factory, a abychom to získali, použijeme metodu getFactory().
getInjectableValues() InjectableValues Používá se k získání injekčních hodnot.
getJsonFactory() JsonFactory Je to zastaralá metoda, jak získat továrnu Json.
getNodeFactory() JsonNodeFactory Používá se k získání JsonNodeFactory, kterou používá mapovač v době přímého vytváření kořenových instancí JsonNode pro stromy.
getPropertyNamingStrategy() PropertyNamingStrategy Jak název napovídá, používá se ke strategii pojmenování nemovitosti.
getSerializationConfig() SerializationConfig Používá se k získání sdíleného výchozího objektu SerializationConfig. Vrácený objekt definuje konfigurační nastavení pro serializaci.
getSerializerFactory() SerializerFactory Používá se k získání aktuální SerializerFactory.
getSerializerProvider() SerializerProvider Je to přístupový objekt pro továrnu, který se používá k vytváření instancí voláním DefaultSerializerProvider.createInstance(SerializationConfig, SerializerFactory).
getSerializerProviderInstance() SerializerProvider Je to přístupový objekt, který se používá k vytvoření a vrácení instance SerializerProvider, kterou můžeme použít pro přístup k serializátorům.
getSubtypeResolver() SubtypeResolver Používá se pro přístup k používanému překladači podtypů.
getTypeFactory() TypeFactory Je to přístupový objekt, který se používá k získání instance aktuálně nakonfigurované TypeFactory.
getVisibilityChecker() VisibilityChecker Používá se pro přístup k aktuálně nakonfigurované kontrole viditelnosti.
isEnabled(DeserializationFeature f)
Podobné metody:
  1. isEnabled(JsonFactory.Feature f)
  2. isEnabled(JsonGenerator.Feature f)
  3. isEnabled(JsonParser.Feature f)
  4. isEnabled(MapperFeature f)
  5. isEnabled(SerializationFeature f)
Boolean Metoda isEnable() a její varianty se používají ke kontrole, zda je daná funkce specifická pro deserializaci, JsonFactory, JsonGenerator, JsonParser, Mapper nebo Serialization povolena nebo ne.
mixInCount() int Používá se k získání počtu mixIn.
čtenář()
Podobné metody:
  1. čtečka (Base64Variant defaultBase64)
  2. čtečka (typ třídy)
  3. čtenář(ContextAttributes attrs)
  4. čtečka (funkce DeserializationFeature)
  5. čtečka (první funkce deserializace, funkce deserializace... jiné)
  6. čtečka (schéma FormatSchema)
  7. čtenář (InjectableValues ​​injectableValues)
  8. čtečka (typ Java)
  9. čtečka (JsonNodeFactory f)
  10. čtečka (typ TypeReference)
ObjectReader Metoda reader() a její varianty jsou tovární metody, které se používají k vytvoření instance ObjectReaderu. Na základě požadavku můžeme předat variantu kódování Base64 pro binární data kódovaná Base64, výchozí atributy, povolené funkce, injektovatelné hodnoty, JsonNodeFactory pro konstrukci stromů JSON.
readerFor (typ třídy) ObjectReader Je to tovární metoda, která se používá ke konstrukci ObjectReaderu a umožňuje operace čtení nebo aktualizace pro instance zadaného typu.
readerFor (typ Java) ObjectReader Je to tovární metoda, která se používá ke konstrukci ObjectReaderu a umožňuje operace čtení nebo aktualizace pro instance specifikovaného JavaType.
readerFor (TypeReference Type) ObjectReader Je to tovární metoda, která se používá ke konstrukci ObjectReader, umožňující operace čtení nebo aktualizace pro instance daného TypeReference.
readerForUpdating(Object valueToUpdate) ObjectReader Jedná se o tovární metodu, která se používá ke konstrukci ObjectReaderu umožňující aktualizační operace pro daný objekt.
readerWithView (zobrazení třídy) ObjectReader Je to tovární metoda, která se používá ke konstrukci ObjectReader, což umožňuje
de-serializaci objektů s daným JSON View.
readTree(byte[] content)
  1. readTree (soubor souboru)
  2. readTree (InputStream in)
  3. readTree(JsonParser p)
  4. readTree (Reader r)
  5. readTree (obsah řetězce)
  6. readTree (zdroj URL)
JsonNode
NEBO
T
ReadTree() a její varianty se používají k de-serializaci obsahu JSON jako stromu vyjádřeného pomocí sady instancí JsonNode.
readValue(byte[] src, třída valueType)
Podobné metody
  1. readValue(byte[] src, int offset, int len, JavaType valueType)
  2. readValue(byte[] src, int offset, int len, Class valueType)
  3. readValue(byte[] src, JavaType valueType)
  4. readValue(DataInput src, Class valueType)
  5. readValue(Soubor src, Třída valueType)
  6. readValue(DataInput src, JavaType valueType)
  7. readValue(Soubor src, JavaType valueType)
  8. readValue(Soubor src, TypeReference valueTypeRef)
  9. readValue(InputStream src, JavaType valueType)
  10. readValue(byte[] src, TypeReference valueTypeRef)
  11. readValue(InputStream src, Class valueType)
  12. readValue(InputStream src, TypeReference valueTypeRef)
  13. readValue(JsonParser p, JavaType valueType)
  14. readValue(JsonParser p, třída valueType)
  15. readValue(JsonParser p, ResolvedType valueType)
  16. readValue(byte[] src, int offset, int len, TypeReference valueTypeRef)
  17. readValue(Reader src, TypeReference valueTypeRef)
  18. readValue(JsonParser p, TypeReference valueTypeRef)
  19. readValue(Reader src, JavaType valueType)
  20. readValue(obsah řetězce, TypeReference valueTypeRef)
  21. readValue(Reader src, Class valueType)
  22. readValue (obsah řetězce, třída valueType)
  23. readValue (obsah řetězce, JavaType valueType)
  24. readValue(URL src, TypeReference valueTypeRef)readValue(URL src, Class valueType)
  25. readValue(URL src, JavaType valueType)
T
NEBO
MappingIterator
ReadValue() a její varianty se používají k deserializaci obsahu JSON
  1. Z daného souboru do daného typu Java, do typu bez kontejneru nebo do odkazu typu Java, kterému je předán jako argument.
  2. Z daného obsahu JSON do String.
  3. Z daného zdroje do daného typu Java.
Variace se používají na základě různých požadavků.
readValues(JsonParser p, Class valueType)
Podobné metody:
  1. readValues(JsonParser p, JavaType valueType)
  2. readValues(JsonParser p, ResolvedType valueType)
  3. readValues(JsonParser p, TypeReferencevalueTypeRef)
MappingIterator ReadValues() a její varianty se používají ke čtení sekvence objektů z proudu analyzátoru.
registerModule (modul modulu)
Podobné metody:
  1. registerModules (opakovatelné moduly)
  2. registerModules(modul... moduly)
ObjectMapper RegisterModule() a jeho varianty se používají k registraci modulu, který má schopnost rozšířit funkčnost poskytovanou mapovačem.
registerSubtypes(NamedType... typy) prázdnota Slouží k registraci dané třídy jako podtypu. Tímto způsobem může rozlišení založené na názvech typů propojit nadtypy s podtypy.
setAnnotationIntrospector(AnnotationIntrospector ai) ObjectMapper Slouží k nastavení AnnotationIntrospector, který používá instance mapperu pro serializaci i de-serializaci.
setAnnotationIntrospectors(AnnotationIntrospector serializerAI, AnnotationIntrospector deserializerAI) ObjectMapper Používá se ke změně instance AnnotationIntrospector používané aktuální instancí mapovače pro serializaci a de-serializaci.
setBase64Variant(Base64Variant v) ObjectMapper Používá se ke konfiguraci výchozí Base64Variant, kterou budou používat byte[] serializátory a de-serializátory.
setConfig(Konfigurace DeserializationConfig) ObjectMapper Tuto metodu používáme, abychom provedli přepsání základního objektu DeserializationConfig Object.
setConfig(SerializationConfig config) ObjectMapper Tuto metodu používáme, abychom provedli přepsání základního objektu SerializationConfig s konfiguračním nastavením specifickým pro serializaci.
setDateFormat(DateFormat dateFormat) ObjectMapper Používá se ke konfiguraci výchozího formátu DateFormat tak, aby jej používal v době serializace časových hodnot jako řetězců nebo de-serializace z řetězců JSON.
setDefaultPrettyPrinter(PrettyPrinter pp) ObjectMapper Používá se k určení tiskárny PrettyPrinter, která se má používat, když je povoleno výchozí nastavení hezkého tisku.
setDefaultTyping(TypeResolverBuilder typer) ObjectMapper Používá se k povolení automatického zahrnutí informací o typu.
setHandlerInstantiator(HandlerInstantiator ahoj) Objekt Používá se ke konfiguraci HandlerInstantiator pro použití pro vytváření instancí handlerů.
setFilterProvider(FilterProvider filterProvider) ObjectMapper Používá se ke konfiguraci aktuálního mapovače tak, aby používal zadaný FilterProvider pro mapování ID filtrů na skutečné instance filtru.
setInjectableValues(InjectableValues ​​injectableValues) ObjectMapper Používá se ke konfiguraci InjectableValues, která se používá k nalezení hodnot pro injekci.
setLocale(Local l) ObjectMapper Používá se k přepsání výchozího národního prostředí pro formátování.
setMixInResolver(ClassIntrospector.MixInResolver resolve) ObjectMapper Tuto metodu používáme ke specifikaci daného překladače k ​​nalezení smíšených tříd, které se mají použít, přičemž přepíše přímo přidaná mapování.
setMixInAnnotations(Map zdrojové mixy) prázdnota Je to odepisovaná metoda pro definování smíšené anotace.
setNodeFactory(JsonNodeFactory f) ObjectMapper Používá se k určení JsonNodeFactory, který se má použít pro konstrukci uzlů stromu na kořenové úrovni.
setMixIns(Map zdrojové mixy) ObjectMapper Používá se k definování smíšených anotací, které se mají použít pro rozšiřování anotací, které mají zpracovatelné třídy.
setPropertyInclusion(JsonInclude.Value incl) ObjectMapper Používá se k nastavení výchozí strategie zahrnutí vlastností POJO pro serializaci.
setPropertyNamingStrategy(PropertyNamingStrategy s) ObjectMapper Používá se k nastavení strategie pojmenování vlastních vlastností, která se má použít.
setSerializerFactory(SerializerFactory f) ObjectMapper Používá se k nastavení konkrétní SerializerFactory, která se má použít pro vytváření (bean) serializátorů.
setSerializerProvider(VýchozíSerializerProvider p) ObjectMapper Používá se k nastavení „návrhu“ instance SerializerProvider pro její použití jako základ pro skutečné instance poskytovatele, které se mají použít pro zpracování mezipaměti instancí JsonSerializer.
setSubtypeResolver(SubtypeResolver str) ObjectMapper Používá se k nastavení vlastního překladače podtypů, který se má použít.
setTimeZone (TimeZone tz) ObjectMapper Používá se k přepsání výchozího časového pásma pro formátování.
setTypeFactory(TypeFactory f) ObjectMapper Používá se k přepsání instance TypeFactory, kterou používá aktuální mapovač.
setVisibility(PropertyAccessor forMethod, viditelnost JsonAutoDetect.Visibility)
  1. setVisibility(VisibilityChecker vc)
  2. setVisibilityChecker(VisibilityChecker vc)
ObjectMapper SetVisibility() a její variace se používají k nastavení aktuálně nakonfigurovaného VisibilityCheckeru. Vrácená instance ObjectMapper se používá ke kontrole, zda daný prvek vlastnosti může být automaticky detekován nebo ne.
treeAsTokens(TreeNode n) JsonParser Používá se ke konstrukci JsonParser z reprezentace stromu JSON.
treeToValue(TreeNode n, Class valueType) T Používá se k navázání dat, která daný strom JSON obsahuje, do určitého typu hodnoty.
verze() Verze Používá se k získání informací o verzi uložených a načtených z jaru, který obsahuje tuto třídu.
spisovatel()
  1. spisovatel (Base64Variant defaultBase64)
  2. spisovatel (únik postavy uniká)
  3. spisovatel(ContextAttributes attrs)
  4. spisovatel (DateFormat df)
  5. spisovatel(FilterProvider filterProvider)
  6. spisovatel (schéma FormatSchema)
  7. spisovatel (PrettyPrinter pp)
  8. spisovatel (funkce SerializationFeature)
  9. spisovatel (první funkce serializace, funkce serializace... jiné)
ObjectWriter Write() a její variace se používají ke konstrukci ObjectWriter s výchozím nastavením, s danou variantou kódování Base64 pro binární data kódovaná Base64, detaily o kódování znaků pro výstup, výchozí atributy, DateFormat, poskytovatel filtru, objekt schématu do JsonGenerator používaného pro zápis obsahu, pěkná tiskárna pro odsazení nebo povolenou funkci.
writeFor(Class rootType) - ObjectWriter Používá se ke konstrukci ObjectWriter pro serializaci objektů pomocí zadaného kořenového typu namísto skutečného typu hodnoty za běhu.
spisovatelFor (JavaType rootType) ObjectWriter Používá se ke konstrukci ObjectWriter pro serializaci objektů pomocí zadaného kořenového typu namísto skutečného typu hodnoty za běhu.
WriteFor(TypeReference rootType) ObjectWriter Používá se ke konstrukci ObjectWriter pro serializaci objektů pomocí zadaného kořenového typu namísto skutečného typu hodnoty za běhu.
spisovatelWithDefaultPrettyPrinter() ObjectWriter Je to tovární metoda, která se používá ke konstrukci ObjectWriter pro serializaci objektů pomocí docela výchozí tiskárny pro odsazení.
spisovatelWithType (kořenový typ třídy)
  1. spisovatelWithType (kořenový typ třídy)
  2. spisovatelWithType (TypeReference rootType)
ObjectWriter Tyto metody jsou odepisovány a místo nich používáme metodu writeFor(TypeReference).
WriterWithView (Seriálové zobrazení třídy) ObjectWriter Je to tovární metoda, která se používá ke konstrukci ObjectWriter pro serializaci objektů pomocí zadaného zobrazení JSON.
writeTree(JsonGenerator jgen, JsonNode rootNode) prázdnota Používá se pro serializaci poskytnutého stromu JSON pomocí daného JsonGeneratoru.
writeValue(File resultFile, Object value) prázdnota Slouží k serializaci hodnoty Java jako výstupu JSON a jejímu zápisu do daného soubor.
writeValue(JsonGenerator g, Hodnota objektu). prázdnota Používá se k serializaci hodnot Java jako výstupu JSON pomocí daného JsonGenerator.
writeValue(OutputStream out, Hodnota objektu) prázdnota Používá se k serializaci hodnoty Java jako výstupu JSON pomocí daného OutputStream.
writeValue(Writer w, Hodnota objektu) prázdnota Používá se k serializaci hodnot Java jako výstupu JSON pomocí daného Spisovatel.
writeValueAsBytes(hodnota objektu) byte[] Používá se pro serializaci hodnot Java jako bajtové pole.
writeValueAsString(hodnota objektu) Tětiva Používá se pro serializaci hodnot Java jako řetězec.

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ýstup:

Třída ObjectMapper v Jacksonu