クラス Jackson2ObjectMapperBuilder
ObjectMapper インスタンスを作成するために使用されるビルダー。Jackson のデフォルトプロパティを次のようにカスタマイズします。
また、次の既知のモジュールがクラスパスで検出された場合、自動的に登録します。
- jackson-datatype-jdk8:
OptionalSE のような他の 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 Jackson2ObjectMapperBuildercbor()Jackson2ObjectMapperBuilderインスタンスを取得して、CBOR データ形式のObjectMapperインスタンスを構築します。voidconfigure(ObjectMapper objectMapper) このビルダーの設定を使用して、既存のObjectMapperインスタンスを構成します。createXmlMapper(boolean createXmlMapper) trueに設定すると、デフォルトのコンストラクターを使用してXmlMapperが作成されます。dateFormat(DateFormatSE dateFormat) 指定されたDateFormatSE で日付 / 時刻の形式を定義します。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 Jackson2ObjectMapperBuilderjson()通常の JSONObjectMapperインスタンスを構築するには、Jackson2ObjectMapperBuilderインスタンスを取得します。フォーマットに使用するデフォルトのLocaleSE をオーバーライドします。フォーマットに使用するデフォルトのLocaleSE をオーバーライドします。指定されたクラスまたはインターフェースを補強するために使用するミックスインアノテーションを追加します。指定されたクラスまたはインターフェースを補強するために使用するミックスインアノテーションを追加します。moduleClassLoader(ClassLoaderSE moduleClassLoader) Jackson 拡張モジュールのロードに使用する ClassLoader を設定します。ObjectMapperに登録するモジュールを指定します。modules(ConsumerSE<ListSE<Module>> consumer) モジュールの基礎となるリストを完全に制御するためのConsumerSE を備えたmodules(Module...)のバリアント。ListSE を使用したmodules(Module...)のバリアント。modulesToInstall(Module... modules) ObjectMapperに登録する 1 つ以上のモジュールを指定します。modulesToInstall(ClassSE<? extends Module>... modules) ObjectMapperに登録する 1 つ以上のモジュールをクラスごとに指定します。modulesToInstall(ConsumerSE<ListSE<Module>> consumer) モジュールの基礎となるリストを完全に制御するためのConsumerSE を備えた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) SimpleDateFormatSE を使用して日付 / 時刻形式を定義します。static Jackson2ObjectMapperBuildersmile()Smile データ形式ObjectMapperインスタンスを構築するために、Jackson2ObjectMapperBuilderインスタンスを取得してください。フォーマットに使用するデフォルトのTimeZoneSE をオーバーライドします。timeZone(TimeZoneSE timeZone) フォーマットに使用するデフォルトのTimeZoneSE をオーバーライドします。visibility(com.fasterxml.jackson.annotation.PropertyAccessor accessor, com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility visibility) 自動検出されるプロパティの種類を制限するには、可視性を指定します。static Jackson2ObjectMapperBuilderxml()XmlMapperインスタンスを構築するには、Jackson2ObjectMapperBuilderインスタンスを取得します。static Jackson2ObjectMapperBuilderyaml()YAML データ形式のObjectMapperインスタンスを構築するには、Jackson2ObjectMapperBuilderインスタンスを取得します。
コンストラクターの詳細
Jackson2ObjectMapperBuilder
public Jackson2ObjectMapperBuilder()
メソッドの詳細
createXmlMapper
trueに設定すると、デフォルトのコンストラクターを使用してXmlMapperが作成されます。これは、configure(com.fasterxml.jackson.databind.ObjectMapper)コールではなく、build()コールにのみ適用されます。factory
ObjectMapperインスタンスの作成に使用されるJsonFactoryを定義します。- 導入:
- 5.0
dateFormat
指定されたDateFormatSE で日付 / 時刻の形式を定義します。メモ: このプロパティを設定すると、Jackson のスレッドセーフルールに従って、公開された
ObjectMapperが非スレッドセーフになります。simpleDateFormat
SimpleDateFormatSE を使用して日付 / 時刻形式を定義します。メモ: このプロパティを設定すると、Jackson のスレッドセーフルールに従って、公開された
ObjectMapperが非スレッドセーフになります。locale
フォーマットに使用するデフォルトのLocaleSE をオーバーライドします。使用されるデフォルト値は
Locale.getDefault()です。- 導入:
- 4.1.5
locale
フォーマットに使用するデフォルトのLocaleSE をオーバーライドします。使用されるデフォルト値は
Locale.getDefault()です。- パラメーター:
localeString- 文字列表現としてのロケール ID- 導入:
- 4.1.5
timeZone
フォーマットに使用するデフォルトのTimeZoneSE をオーバーライドします。使用されるデフォルト値は UTC (ローカルタイムゾーンではありません) です。
- 導入:
- 4.1.5
timeZone
フォーマットに使用するデフォルトのTimeZoneSE をオーバーライドします。使用されるデフォルト値は 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
- 関連事項:
PropertyAccessorJsonAutoDetect.Visibility
featuresToEnable
有効にする機能を指定します。featuresToDisable
無効にする機能を指定します。modules
ObjectMapperに登録するモジュールを指定します。複数の呼び出しは追加されません。最後の呼び出しで登録するモジュールが定義されます。
メモ: これが設定されている場合、モジュールの自動検出は行われません。Jackson でも Spring でも行われません (
findModulesViaServiceLoaderを参照)。結果として、ここで空のリストを指定すると、あらゆる種類のモジュール検出が抑制されます。これまたは
modulesToInstall(com.fasterxml.jackson.databind.Module...)の両方ではなく、いずれかを指定します。- 導入:
- 4.1.5
- 関連事項:
modules
ListSE を使用したmodules(Module...)のバリアント。modules
モジュールの基礎となるリストを完全に制御するためのConsumerSE を備えたmodules(Module...)のバリアント。- 導入:
- 5.3.22
- 関連事項:
modulesToInstall
ObjectMapperに登録する 1 つ以上のモジュールを指定します。複数の呼び出しは追加されません。最後の呼び出しで登録するモジュールが定義されます。
ここで指定されたモジュールは、Spring による JSR-310 の自動検出、または Jackson によるモジュールの検出 (
findModulesViaServiceLoaderを参照) 後に登録され、最終的にその構成を上書きできるようになります。これまたは
modules(Module...)の両方ではなく、いずれかを指定します。modulesToInstall
モジュールの基礎となるリストを完全に制御するためのConsumerSE を備えた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