public class Jackson2ObjectMapperBuilder extends ObjectSE
ObjectMapper インスタンスを作成するために使用されるビルダー。Jackson のデフォルトプロパティを次のようにカスタマイズします。
また、次の既知のモジュールがクラスパスで検出された場合、自動的に登録します。
OptionalSE のような他の Java 8 型のサポート Spring 5.3 以降、Jackson 2.9 から 2.12 と互換性があります。
build(), configure(ObjectMapper), Jackson2ObjectMapperFactoryBean| コンストラクターと説明 |
|---|
Jackson2ObjectMapperBuilder() |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic Jackson2ObjectMapperBuilder createXmlMapper(boolean createXmlMapper)
true に設定すると、デフォルトのコンストラクターを使用して XmlMapper が作成されます。これは、configure(com.fasterxml.jackson.databind.ObjectMapper) コールではなく、build() コールにのみ適用されます。public Jackson2ObjectMapperBuilder factory(JsonFactory factory)
ObjectMapper インスタンスの作成に使用される JsonFactory を定義します。public Jackson2ObjectMapperBuilder dateFormat(DateFormatSE dateFormat)
DateFormatSE で日付 / 時刻の形式を定義します。 メモ: このプロパティを設定すると、Jackson のスレッドセーフルールに従って、公開された ObjectMapper が非スレッドセーフになります。
public Jackson2ObjectMapperBuilder simpleDateFormat(StringSE format)
SimpleDateFormatSE を使用して日付 / 時刻形式を定義します。 メモ: このプロパティを設定すると、Jackson のスレッドセーフルールに従って、公開された ObjectMapper が非スレッドセーフになります。
public Jackson2ObjectMapperBuilder locale(LocaleSE locale)
LocaleSE をオーバーライドします。使用されるデフォルト値は Locale.getDefault()SE です。public Jackson2ObjectMapperBuilder locale(StringSE localeString)
LocaleSE をオーバーライドします。使用されるデフォルト値は Locale.getDefault()SE です。localeString - 文字列表現としてのロケール IDpublic Jackson2ObjectMapperBuilder timeZone(TimeZoneSE timeZone)
TimeZoneSE をオーバーライドします。使用されるデフォルト値は UTC です(ローカルタイムゾーンではありません)。public Jackson2ObjectMapperBuilder timeZone(StringSE timeZoneString)
TimeZoneSE をオーバーライドします。使用されるデフォルト値は UTC です(ローカルタイムゾーンではありません)。timeZoneString - 文字列表現としてのゾーン IDpublic Jackson2ObjectMapperBuilder annotationIntrospector(AnnotationIntrospector annotationIntrospector)
AnnotationIntrospector を設定します。public Jackson2ObjectMapperBuilder annotationIntrospector(FunctionSE<AnnotationIntrospector,AnnotationIntrospector> pairingFunction)
annotationIntrospector(AnnotationIntrospector) の代替。AnnotationIntrospector.pair(AnnotationIntrospector, AnnotationIntrospector) 経由。pairingFunction - 現在設定されているイントロスペクター(おそらく null)に適用する関数。関数の結果が新しいイントロスペクターになります。public Jackson2ObjectMapperBuilder propertyNamingStrategy(PropertyNamingStrategy propertyNamingStrategy)
PropertyNamingStrategy を指定して、ObjectMapper を構成します。public Jackson2ObjectMapperBuilder defaultTyping(TypeResolverBuilder<?> typeResolverBuilder)
TypeResolverBuilder を指定します。public Jackson2ObjectMapperBuilder serializationInclusion(com.fasterxml.jackson.annotation.JsonInclude.Include inclusion)
JsonInclude.Includepublic Jackson2ObjectMapperBuilder serializationInclusion(com.fasterxml.jackson.annotation.JsonInclude.Value serializationInclusion)
JsonInclude.Valuepublic Jackson2ObjectMapperBuilder filters(FilterProvider filters)
@JsonFilter アノテーション付き POJO をサポートするために使用するグローバルフィルターを設定します。MappingJacksonValue.setFilters(FilterProvider)public Jackson2ObjectMapperBuilder mixIn(ClassSE<?> target, ClassSE<?> mixinSource)
target - アノテーションが効果的にオーバーライドされるクラス(またはインターフェース)mixinSource - そのアノテーションが値としてターゲットのアノテーションに「追加」されるクラス(またはインターフェース)ObjectMapper.addMixIn(Class, Class)public Jackson2ObjectMapperBuilder mixIns(MapSE<ClassSE<?>,ClassSE<?>> mixIns)
mixIns - アノテーションがキーとして効果的にオーバーライドされるターゲットクラス(またはインターフェース)と、アノテーションが値としてターゲットのアノテーションに「追加」されるミックスインクラス(またはインターフェース)を持つエントリのマップ。ObjectMapper.addMixIn(Class, Class)public Jackson2ObjectMapperBuilder serializers(JsonSerializer<?>... serializers)
JsonSerializer.handledType() によって返される型用に登録されますが、null であってはなりません。public Jackson2ObjectMapperBuilder serializerByType(ClassSE<?> type, JsonSerializer<?> serializer)
serializers(JsonSerializer...)public Jackson2ObjectMapperBuilder serializersByType(MapSE<ClassSE<?>,JsonSerializer<?>> serializers)
public Jackson2ObjectMapperBuilder deserializers(JsonDeserializer<?>... deserializers)
JsonDeserializer.handledType() によって返される型に対して登録されますが、null であってはなりません。deserializersByType(Map)public Jackson2ObjectMapperBuilder deserializerByType(ClassSE<?> type, JsonDeserializer<?> deserializer)
public Jackson2ObjectMapperBuilder deserializersByType(MapSE<ClassSE<?>,JsonDeserializer<?>> deserializers)
public Jackson2ObjectMapperBuilder autoDetectFields(boolean autoDetectFields)
MapperFeature.AUTO_DETECT_FIELDS オプションのショートカット。public Jackson2ObjectMapperBuilder autoDetectGettersSetters(boolean autoDetectGettersSetters)
public Jackson2ObjectMapperBuilder defaultViewInclusion(boolean defaultViewInclusion)
MapperFeature.DEFAULT_VIEW_INCLUSION オプションのショートカット。public Jackson2ObjectMapperBuilder failOnUnknownProperties(boolean failOnUnknownProperties)
DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES オプションのショートカット。public Jackson2ObjectMapperBuilder failOnEmptyBeans(boolean failOnEmptyBeans)
SerializationFeature.FAIL_ON_EMPTY_BEANS オプションのショートカット。public Jackson2ObjectMapperBuilder indentOutput(boolean indentOutput)
SerializationFeature.INDENT_OUTPUT オプションのショートカット。public Jackson2ObjectMapperBuilder defaultUseWrapper(boolean defaultUseWrapper)
XmlMapper のみに適用されます))。public Jackson2ObjectMapperBuilder visibility(com.fasterxml.jackson.annotation.PropertyAccessor accessor, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility visibility)
PropertyAccessor, JsonAutoDetect.Visibilitypublic Jackson2ObjectMapperBuilder featuresToEnable(ObjectSE... featuresToEnable)
public Jackson2ObjectMapperBuilder featuresToDisable(ObjectSE... featuresToDisable)
public Jackson2ObjectMapperBuilder modules(Module... modules)
ObjectMapper に登録するモジュールを指定します。複数の呼び出しは加算的ではなく、最後の呼び出しは登録するモジュールを定義します。
メモ: これが設定されている場合、モジュールの検出は行われません -Jackson でも Spring でもありません(findModulesViaServiceLoader を参照)。結果として、ここで空のリストを指定すると、あらゆる種類のモジュール検出が抑制されます。
これまたは modulesToInstall(com.fasterxml.jackson.databind.Module...) の両方ではなく、いずれかを指定します。
modules(List), Modulepublic Jackson2ObjectMapperBuilder modules(ListSE<Module> modules)
ListSE を使用した modules(Module...) のバリアント。public Jackson2ObjectMapperBuilder modules(ConsumerSE<ListSE<Module>> consumer)
ConsumerSE を備えた modules(Module...) のバリアント。modules(Module...), modules(List), Modulepublic Jackson2ObjectMapperBuilder modulesToInstall(Module... modules)
ObjectMapper に登録する 1 つ以上のモジュールを指定します。複数の呼び出しは加算的ではなく、最後の呼び出しは登録するモジュールを定義します。
ここで指定されたモジュールは、Spring による JSR-310 および Joda-Time の自動検出、または Jackson によるモジュールの検出(findModulesViaServiceLoader を参照)後に登録され、最終的にそれらの構成をオーバーライドできます。
これまたは modules(Module...) の両方ではなく、いずれかを指定します。
modulesToInstall(Consumer), modulesToInstall(Class...), Modulepublic Jackson2ObjectMapperBuilder modulesToInstall(ConsumerSE<ListSE<Module>> consumer)
ConsumerSE を備えた modulesToInstall(Module...) のバリアント。modulesToInstall(Module...), modulesToInstall(Class...), Module@SafeVarargsSE public final Jackson2ObjectMapperBuilder modulesToInstall(ClassSE<? extends Module>... modules)
ObjectMapper に登録する 1 つ以上のモジュールをクラスごとに指定します。複数の呼び出しは加算的ではなく、最後の呼び出しは登録するモジュールを定義します。
ここで指定されたモジュールは、Spring による JSR-310 および Joda-Time の自動検出、または Jackson によるモジュールの検出(findModulesViaServiceLoader を参照)後に登録され、最終的にそれらの構成をオーバーライドできます。
これまたは modules(Module...) の両方ではなく、いずれかを指定します。
public Jackson2ObjectMapperBuilder findModulesViaServiceLoader(boolean findModules)
このモードが設定されていない場合、Spring の Jackson2ObjectMapperBuilder 自体は、クラスパス上で JSR-310 および Joda-Time サポートモジュールを見つけようとします。Java 8 および Joda-Time 自体がそれぞれ利用可能である場合。
public Jackson2ObjectMapperBuilder moduleClassLoader(ClassLoaderSE moduleClassLoader)
public Jackson2ObjectMapperBuilder handlerInstantiator(HandlerInstantiator handlerInstantiator)
JsonSerializer、JsonDeserializer、KeyDeserializer、TypeResolverBuilder および TypeIdResolver)の構成をカスタマイズします。applicationContext(ApplicationContext)public Jackson2ObjectMapperBuilder applicationContext(ApplicationContext applicationContext)
JsonSerializer、JsonDeserializer、KeyDeserializer、TypeResolverBuilder および TypeIdResolver)をオートワイヤーするために、Spring ApplicationContext を設定します。SpringHandlerInstantiatorpublic Jackson2ObjectMapperBuilder postConfigurer(ConsumerSE<ObjectMapper> configurer)
ObjectMapper インスタンスに直接追加のカスタマイズを適用するオプション。configurer - 適用するコンフィギュレーター。複数のコンフィギュレーターが登録されている場合、登録順に適用されます。public <T extends ObjectMapper> T build()
ObjectMapper インスタンスを作成します。 ビルド操作ごとに、独立した ObjectMapper インスタンスが生成されます。ビルダーの設定を変更して、その後のビルド操作で最新の設定に基づいて新しい ObjectMapper を作成できます。
public void configure(ObjectMapper objectMapper)
ObjectMapper インスタンスを構成します。これは、任意の数の ObjectMappers に適用できます。objectMapper - 設定する ObjectMapperpublic static Jackson2ObjectMapperBuilder json()
ObjectMapper インスタンスを構築するには、Jackson2ObjectMapperBuilder インスタンスを取得します。public static Jackson2ObjectMapperBuilder xml()
XmlMapper インスタンスを構築するには、Jackson2ObjectMapperBuilder インスタンスを取得します。public static Jackson2ObjectMapperBuilder smile()
ObjectMapper インスタンスを構築するために、Jackson2ObjectMapperBuilder インスタンスを取得してください。public static Jackson2ObjectMapperBuilder cbor()
Jackson2ObjectMapperBuilder インスタンスを取得して、CBOR データ形式の ObjectMapper インスタンスを構築します。