クラス Jackson2ObjectMapperBuilder
ObjectMapper
インスタンスを作成するために使用されるビルダー。Jackson のデフォルトプロパティを次のようにカスタマイズします。
また、次の既知のモジュールがクラスパスで検出された場合、自動的に登録します。
- jackson-datatype-jdk8:
Optional
SE のような他の Java 8 型のサポート - jackson-datatype-jsr310: Java 8 Date&Time API 型のサポート
- jackson-module-kotlin: Kotlin クラスとデータクラスのサポート
- jackson-modules-java8/parameter-names : パラメーター名へのアクセスのサポート
- 導入:
- 4.1.1
- 作成者:
- Sebastien Deleuze, Juergen Hoeller, Tadaya Tsuyukubo, Edd ú Mel é ndez, Hyoungjune Kim
- 関連事項:
コンストラクターのサマリー
方法の概要
修飾子と型メソッド説明annotationIntrospector
(AnnotationIntrospector annotationIntrospector) シリアライゼーションとデシリアライゼーションの両方にAnnotationIntrospector
を設定します。annotationIntrospector
(FunctionSE<AnnotationIntrospector, AnnotationIntrospector> pairingFunction) annotationIntrospector(AnnotationIntrospector)
の代替であり、現在設定されているイントロスペクターを置き換えるのではなく、たとえばAnnotationIntrospector.pair(AnnotationIntrospector, AnnotationIntrospector)
を介して組み合わせることができます。applicationContext
(ApplicationContext applicationContext) Jackson ハンドラー(JsonSerializer
、JsonDeserializer
、KeyDeserializer
、TypeResolverBuilder
およびTypeIdResolver
)をオートワイヤーするために、SpringApplicationContext
を設定します。autoDetectFields
(boolean autoDetectFields) MapperFeature.AUTO_DETECT_FIELDS
オプションのショートカット。autoDetectGetterSetter
(boolean autoDetectGetterSetter) <T extends ObjectMapper>
Tbuild()
新しいObjectMapper
インスタンスを作成します。static Jackson2ObjectMapperBuilder
cbor()
Jackson2ObjectMapperBuilder
インスタンスを取得して、CBOR データ形式のObjectMapper
インスタンスを構築します。void
configure
(ObjectMapper objectMapper) このビルダーの設定を使用して、既存のObjectMapper
インスタンスを構成します。createXmlMapper
(boolean createXmlMapper) true
に設定すると、デフォルトのコンストラクターを使用してXmlMapper
が作成されます。dateFormat
(DateFormatSE dateFormat) 指定されたDateFormat
SE で日付 / 時刻の形式を定義します。defaultTyping
(TypeResolverBuilder<?> typeResolverBuilder) Jackson のデフォルトの入力に使用するTypeResolverBuilder
を指定します。defaultUseWrapper
(boolean defaultUseWrapper) ラッパーがインデックス付き(リスト、配列)プロパティに使用されるかどうかを定義します(既定では使用されません(XmlMapper
のみに適用されます))。defaultViewInclusion
(boolean defaultViewInclusion) MapperFeature.DEFAULT_VIEW_INCLUSION
オプションのショートカット。deserializerByType
(ClassSE<?> type, JsonDeserializer<?> deserializer) 指定した型のカスタムデシリアライザーを構成します。deserializers
(JsonDeserializer<?>... deserializers) カスタムデシリアライザーを構成します。deserializersByType
(MapSE<ClassSE<?>, JsonDeserializer<?>> deserializers) 指定された型のカスタムデシリアライザーを構成します。factory
(JsonFactory factory) ObjectMapper
インスタンスの作成に使用されるJsonFactory
を定義します。failOnEmptyBeans
(boolean failOnEmptyBeans) SerializationFeature.FAIL_ON_EMPTY_BEANS
オプションのショートカット。failOnUnknownProperties
(boolean failOnUnknownProperties) DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES
オプションのショートカット。featuresToDisable
(ObjectSE... featuresToDisable) 無効にする機能を指定します。featuresToEnable
(ObjectSE... featuresToEnable) 有効にする機能を指定します。filters
(FilterProvider filters) @JsonFilter
アノテーション付き POJO をサポートするために使用するグローバルフィルターを設定します。findModulesViaServiceLoader
(boolean findModules) クラスパス内の META-INF メタデータに基づいて、Jackson が JDK ServiceLoader を介して使用可能なモジュールを検索するかどうかを設定します。handlerInstantiator
(HandlerInstantiator handlerInstantiator) Jackson ハンドラー(JsonSerializer
、JsonDeserializer
、KeyDeserializer
、TypeResolverBuilder
およびTypeIdResolver
)の構成をカスタマイズします。indentOutput
(boolean indentOutput) SerializationFeature.INDENT_OUTPUT
オプションのショートカット。static Jackson2ObjectMapperBuilder
json()
通常の JSONObjectMapper
インスタンスを構築するには、Jackson2ObjectMapperBuilder
インスタンスを取得します。フォーマットに使用するデフォルトのLocale
SE をオーバーライドします。フォーマットに使用するデフォルトのLocale
SE をオーバーライドします。指定されたクラスまたはインターフェースを補強するために使用するミックスインアノテーションを追加します。指定されたクラスまたはインターフェースを補強するために使用するミックスインアノテーションを追加します。moduleClassLoader
(ClassLoaderSE moduleClassLoader) Jackson 拡張モジュールのロードに使用する ClassLoader を設定します。ObjectMapper
に登録するモジュールを指定します。modules
(ConsumerSE<ListSE<Module>> consumer) モジュールの基礎となるリストを完全に制御するためのConsumer
SE を備えたmodules(Module...)
のバリアント。List
SE を使用したmodules(Module...)
のバリアント。modulesToInstall
(Module... modules) ObjectMapper
に登録する 1 つ以上のモジュールを指定します。modulesToInstall
(ClassSE<? extends Module>... modules) ObjectMapper
に登録する 1 つ以上のモジュールをクラスごとに指定します。modulesToInstall
(ConsumerSE<ListSE<Module>> consumer) モジュールの基礎となるリストを完全に制御するためのConsumer
SE を備えたmodulesToInstall(Module...)
のバリアント。postConfigurer
(ConsumerSE<ObjectMapper> configurer) ビルダーの他のすべての構成プロパティが適用された後、最後にObjectMapper
インスタンスに直接追加のカスタマイズを適用するオプション。propertyNamingStrategy
(PropertyNamingStrategy propertyNamingStrategy) PropertyNamingStrategy
を指定して、ObjectMapper
を構成します。serializationInclusion
(com.fasterxml.jackson.annotation.JsonInclude.Include inclusion) 直列化のカスタム包含戦略を設定します。serializationInclusion
(com.fasterxml.jackson.annotation.JsonInclude.Value serializationInclusion) 直列化のカスタム包含戦略を設定します。serializerByType
(ClassSE<?> type, JsonSerializer<?> serializer) 指定した型のカスタムシリアライザーを構成します。serializers
(JsonSerializer<?>... serializers) カスタムシリアライザーを構成します。serializersByType
(MapSE<ClassSE<?>, JsonSerializer<?>> serializers) 指定された型のカスタムシリアライザーを構成します。simpleDateFormat
(StringSE format) SimpleDateFormat
SE を使用して日付 / 時刻形式を定義します。static Jackson2ObjectMapperBuilder
smile()
Smile データ形式ObjectMapper
インスタンスを構築するために、Jackson2ObjectMapperBuilder
インスタンスを取得してください。フォーマットに使用するデフォルトのTimeZone
SE をオーバーライドします。timeZone
(TimeZoneSE timeZone) フォーマットに使用するデフォルトのTimeZone
SE をオーバーライドします。visibility
(com.fasterxml.jackson.annotation.PropertyAccessor accessor, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility visibility) 自動検出されるプロパティの種類を制限するには、可視性を指定します。static Jackson2ObjectMapperBuilder
xml()
XmlMapper
インスタンスを構築するには、Jackson2ObjectMapperBuilder
インスタンスを取得します。static Jackson2ObjectMapperBuilder
yaml()
YAML データ形式のObjectMapper
インスタンスを構築するには、Jackson2ObjectMapperBuilder
インスタンスを取得します。
コンストラクターの詳細
Jackson2ObjectMapperBuilder
public Jackson2ObjectMapperBuilder()
メソッドの詳細
createXmlMapper
true
に設定すると、デフォルトのコンストラクターを使用してXmlMapper
が作成されます。これは、configure(com.fasterxml.jackson.databind.ObjectMapper)
コールではなく、build()
コールにのみ適用されます。factory
ObjectMapper
インスタンスの作成に使用されるJsonFactory
を定義します。- 導入:
- 5.0
dateFormat
指定されたDateFormat
SE で日付 / 時刻の形式を定義します。メモ: このプロパティを設定すると、Jackson のスレッドセーフルールに従って、公開された
ObjectMapper
が非スレッドセーフになります。simpleDateFormat
SimpleDateFormat
SE を使用して日付 / 時刻形式を定義します。メモ: このプロパティを設定すると、Jackson のスレッドセーフルールに従って、公開された
ObjectMapper
が非スレッドセーフになります。locale
フォーマットに使用するデフォルトのLocale
SE をオーバーライドします。使用されるデフォルト値は
Locale.getDefault()
です。- 導入:
- 4.1.5
locale
フォーマットに使用するデフォルトのLocale
SE をオーバーライドします。使用されるデフォルト値は
Locale.getDefault()
です。- パラメーター:
localeString
- 文字列表現としてのロケール ID- 導入:
- 4.1.5
timeZone
フォーマットに使用するデフォルトのTimeZone
SE をオーバーライドします。使用されるデフォルト値は UTC (ローカルタイムゾーンではありません) です。
- 導入:
- 4.1.5
timeZone
フォーマットに使用するデフォルトのTimeZone
SE をオーバーライドします。使用されるデフォルト値は UTC (ローカルタイムゾーンではありません) です。
- パラメーター:
timeZoneString
- 文字列表現としてのゾーン ID- 導入:
- 4.1.5
annotationIntrospector
public Jackson2ObjectMapperBuilder annotationIntrospector(AnnotationIntrospector annotationIntrospector) シリアライゼーションとデシリアライゼーションの両方にAnnotationIntrospector
を設定します。annotationIntrospector
public Jackson2ObjectMapperBuilder annotationIntrospector(FunctionSE<AnnotationIntrospector, AnnotationIntrospector> pairingFunction) annotationIntrospector(AnnotationIntrospector)
の代替であり、現在設定されているイントロスペクターを置き換えるのではなく、たとえばAnnotationIntrospector.pair(AnnotationIntrospector, AnnotationIntrospector)
を介して組み合わせることができます。- パラメーター:
pairingFunction
- 現在設定されているイントロスペクター(おそらくnull
)に適用する関数。関数の結果が新しいイントロスペクターになります。- 導入:
- 5.2.4
propertyNamingStrategy
public Jackson2ObjectMapperBuilder propertyNamingStrategy(PropertyNamingStrategy propertyNamingStrategy) PropertyNamingStrategy
を指定して、ObjectMapper
を構成します。defaultTyping
Jackson のデフォルトの入力に使用するTypeResolverBuilder
を指定します。- 導入:
- 4.2.2
serializationInclusion
public Jackson2ObjectMapperBuilder serializationInclusion(com.fasterxml.jackson.annotation.JsonInclude.Include inclusion) 直列化のカスタム包含戦略を設定します。- 関連事項:
JsonInclude.Include
serializationInclusion
public Jackson2ObjectMapperBuilder serializationInclusion(com.fasterxml.jackson.annotation.JsonInclude.Value serializationInclusion) 直列化のカスタム包含戦略を設定します。- 導入:
- 5.3
- 関連事項:
JsonInclude.Value
filters
@JsonFilter
アノテーション付き POJO をサポートするために使用するグローバルフィルターを設定します。- 導入:
- 4.2
- 関連事項:
mixIn
指定されたクラスまたはインターフェースを補強するために使用するミックスインアノテーションを追加します。- パラメーター:
target
- アノテーションが効果的にオーバーライドされるクラス(またはインターフェース)mixinSource
- そのアノテーションが値としてターゲットのアノテーションに「追加」されるクラス(またはインターフェース)- 導入:
- 4.1.2
- 関連事項:
mixIns
指定されたクラスまたはインターフェースを補強するために使用するミックスインアノテーションを追加します。- パラメーター:
mixIns
- アノテーションがキーとして効果的にオーバーライドされるターゲットクラス(またはインターフェース)と、アノテーションが値としてターゲットのアノテーションに「追加」されるミックスインクラス(またはインターフェース)を持つエントリのマップ。- 導入:
- 4.1.2
- 関連事項:
serializers
カスタムシリアライザーを構成します。各シリアライザーは、JsonSerializer.handledType()
によって返される型用に登録されますが、null
であってはなりません。serializerByType
指定した型のカスタムシリアライザーを構成します。- 導入:
- 4.1.2
- 関連事項:
serializersByType
public Jackson2ObjectMapperBuilder serializersByType(MapSE<ClassSE<?>, JsonSerializer<?>> serializers) 指定された型のカスタムシリアライザーを構成します。deserializers
カスタムデシリアライザーを構成します。各デシリアライザは、JsonDeserializer.handledType()
によって返される型に対して登録されますが、null
であってはなりません。- 導入:
- 4.3
- 関連事項:
deserializerByType
public Jackson2ObjectMapperBuilder deserializerByType(ClassSE<?> type, JsonDeserializer<?> deserializer) 指定した型のカスタムデシリアライザーを構成します。- 導入:
- 4.1.2
deserializersByType
public Jackson2ObjectMapperBuilder deserializersByType(MapSE<ClassSE<?>, JsonDeserializer<?>> deserializers) 指定された型のカスタムデシリアライザーを構成します。autoDetectFields
MapperFeature.AUTO_DETECT_FIELDS
オプションのショートカット。autoDetectGetterSetter
defaultViewInclusion
MapperFeature.DEFAULT_VIEW_INCLUSION
オプションのショートカット。failOnUnknownProperties
DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES
オプションのショートカット。failOnEmptyBeans
SerializationFeature.FAIL_ON_EMPTY_BEANS
オプションのショートカット。indentOutput
SerializationFeature.INDENT_OUTPUT
オプションのショートカット。defaultUseWrapper
ラッパーがインデックス付き(リスト、配列)プロパティに使用されるかどうかを定義します(既定では使用されません(XmlMapper
のみに適用されます))。- 導入:
- 4.3
visibility
public Jackson2ObjectMapperBuilder visibility(com.fasterxml.jackson.annotation.PropertyAccessor accessor, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility visibility) 自動検出されるプロパティの種類を制限するには、可視性を指定します。- 導入:
- 5.1
- 関連事項:
PropertyAccessor
JsonAutoDetect.Visibility
featuresToEnable
有効にする機能を指定します。featuresToDisable
無効にする機能を指定します。modules
ObjectMapper
に登録するモジュールを指定します。複数の呼び出しは追加されません。最後の呼び出しで登録するモジュールが定義されます。
メモ: これが設定されている場合、モジュールの自動検出は行われません。Jackson でも Spring でも行われません (
findModulesViaServiceLoader
を参照)。結果として、ここで空のリストを指定すると、あらゆる種類のモジュール検出が抑制されます。これまたは
modulesToInstall(com.fasterxml.jackson.databind.Module...)
の両方ではなく、いずれかを指定します。- 導入:
- 4.1.5
- 関連事項:
modules
List
SE を使用したmodules(Module...)
のバリアント。modules
モジュールの基礎となるリストを完全に制御するためのConsumer
SE を備えたmodules(Module...)
のバリアント。- 導入:
- 5.3.22
- 関連事項:
modulesToInstall
ObjectMapper
に登録する 1 つ以上のモジュールを指定します。複数の呼び出しは追加されません。最後の呼び出しで登録するモジュールが定義されます。
ここで指定されたモジュールは、Spring による JSR-310 の自動検出、または Jackson によるモジュールの検出 (
findModulesViaServiceLoader
を参照) 後に登録され、最終的にその構成を上書きできるようになります。これまたは
modules(Module...)
の両方ではなく、いずれかを指定します。modulesToInstall
モジュールの基礎となるリストを完全に制御するためのConsumer
SE を備えたmodulesToInstall(Module...)
のバリアント。- 導入:
- 5.3.22
- 関連事項:
modulesToInstall
@SafeVarargsSE public final Jackson2ObjectMapperBuilder modulesToInstall(ClassSE<? extends Module>... modules) ObjectMapper
に登録する 1 つ以上のモジュールをクラスごとに指定します。複数の呼び出しは追加されません。最後の呼び出しで登録するモジュールが定義されます。
ここで指定されたモジュールは、Spring による JSR-310 の自動検出、または Jackson によるモジュールの検出 (
findModulesViaServiceLoader
を参照) 後に登録され、最終的にその構成を上書きできるようになります。これまたは
modules(Module...)
の両方ではなく、いずれかを指定します。findModulesViaServiceLoader
クラスパス内の META-INF メタデータに基づいて、Jackson が JDK ServiceLoader を介して使用可能なモジュールを検索するかどうかを設定します。このモードが設定されていない場合、Spring の Jackson2ObjectMapperBuilder 自体がクラスパス上で JSR-310 サポートモジュールを見つけようとします。
moduleClassLoader
Jackson 拡張モジュールのロードに使用する ClassLoader を設定します。handlerInstantiator
Jackson ハンドラー(JsonSerializer
、JsonDeserializer
、KeyDeserializer
、TypeResolverBuilder
およびTypeIdResolver
)の構成をカスタマイズします。- 導入:
- 4.1.3
- 関連事項:
applicationContext
Jackson ハンドラー(JsonSerializer
、JsonDeserializer
、KeyDeserializer
、TypeResolverBuilder
およびTypeIdResolver
)をオートワイヤーするために、SpringApplicationContext
を設定します。- 導入:
- 4.1.3
- 関連事項:
postConfigurer
ビルダーの他のすべての構成プロパティが適用された後、最後にObjectMapper
インスタンスに直接追加のカスタマイズを適用するオプション。- パラメーター:
configurer
- 適用するコンフィギュレーター。複数のコンフィギュレーターが登録されている場合、登録順に適用されます。- 導入:
- 5.3
build
新しいObjectMapper
インスタンスを作成します。ビルド操作ごとに、独立した
ObjectMapper
インスタンスが生成されます。ビルダーの設定を変更して、その後のビルド操作で最新の設定に基づいて新しいObjectMapper
を作成できます。- 戻り値:
- 新しく構築された ObjectMapper
configure
このビルダーの設定を使用して、既存のObjectMapper
インスタンスを構成します。これは、任意の数のObjectMappers
に適用できます。- パラメーター:
objectMapper
- 設定する ObjectMapper
json
通常の JSONObjectMapper
インスタンスを構築するには、Jackson2ObjectMapperBuilder
インスタンスを取得します。xml
XmlMapper
インスタンスを構築するには、Jackson2ObjectMapperBuilder
インスタンスを取得します。smile
Smile データ形式ObjectMapper
インスタンスを構築するために、Jackson2ObjectMapperBuilder
インスタンスを取得してください。- 導入:
- 5.0
cbor
Jackson2ObjectMapperBuilder
インスタンスを取得して、CBOR データ形式のObjectMapper
インスタンスを構築します。- 導入:
- 5.0
yaml
YAML データ形式のObjectMapper
インスタンスを構築するには、Jackson2ObjectMapperBuilder
インスタンスを取得します。- 導入:
- 6.2