クラス Jackson2ObjectMapperFactoryBean
- 実装されているすべてのインターフェース:
Aware
、BeanClassLoaderAware
、FactoryBean<com.fasterxml.jackson.databind.ObjectMapper>
、InitializingBean
、ApplicationContextAware
ObjectMapper
(デフォルト) または XmlMapper
(createXmlMapper
プロパティが true に設定) を作成するための FactoryBean
。Jackson のデフォルトプロパティを次のようにカスタマイズします。
MapperFeature.DEFAULT_VIEW_INCLUSION
は無効ですDeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES
は無効です
MappingJackson2HttpMessageConverter
の使用例:
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"> <property name="objectMapper"> <bean class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean" p:autoDetectFields="false" p:autoDetectGettersSetters="false" p:annotationIntrospector-ref="jaxbAnnotationIntrospector" /> </property> </bean>
MappingJackson2JsonView の使用例:
<bean class="org.springframework.web.servlet.view.json.MappingJackson2JsonView"> <property name="objectMapper"> <bean class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean" p:failOnEmptyBeans="false" p:indentOutput="true"> <property name="serializers"> <array> <bean class="org.mycompany.MyCustomSerializer" /> </array> </property> </bean> </property> </bean>
特定の setter が提供されていない場合(まれに使用されるオプションの場合)でも、より一般的な方法 setFeaturesToEnable(java.lang.Object...)
および setFeaturesToDisable(java.lang.Object...)
を使用できます。
<bean class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean"> <property name="featuresToEnable"> <array> <util:constant static-field="com.fasterxml.jackson.databind.SerializationFeature.WRAP_ROOT_VALUE"/> <util:constant static-field="com.fasterxml.jackson.databind.SerializationFeature.CLOSE_CLOSEABLE"/> </array> </property> <property name="featuresToDisable"> <array> <util:constant static-field="com.fasterxml.jackson.databind.MapperFeature.USE_ANNOTATIONS"/> </array> </property> </bean>
また、次の既知のモジュールがクラスパスで検出された場合、自動的に登録します。
- jackson-datatype-jdk7:
Path
SE のような Java 7 型のサポート - jackson-datatype-jdk8:
Optional
SE のような他の Java 8 型のサポート - jackson-datatype-jsr310: Java 8 Date&Time API 型のサポート
- jackson-module-kotlin: Kotlin クラスとデータクラスのサポート
Jackson の ObjectMapper
をカスタム Module
で構成する場合は、setModulesToInstall(java.lang.Class<? extends com.fasterxml.jackson.databind.Module>...)
を介してクラス名で 1 つ以上のモジュールを登録できます。
<bean class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean"> <property name="modulesToInstall" value="myapp.jackson.MySampleModule,myapp.jackson.MyOtherModule"/> </bean>
- 導入:
- 3.2
- 作成者:
- Dmitry Katsubo, Rossen Stoyanchev, Brian Clozel, Juergen Hoeller, Tadaya Tsuyukubo, Sebastien Deleuze
フィールドのサマリー
インターフェース org.springframework.beans.factory.FactoryBean から継承されたフィールド
OBJECT_TYPE_ATTRIBUTE
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明void
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。@Nullable com.fasterxml.jackson.databind.ObjectMapper
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。シングルトン ObjectMapper を返します。非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。この FactoryBean が作成するオブジェクトの型を返します。事前にわからない場合はnull
を返します。boolean
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。このファクトリによって管理されるオブジェクトはシングルトンですか? つまり、FactoryBean.getObject()
は常に同じオブジェクト(キャッシュ可能な参照)を返しますか?void
setAnnotationIntrospector
(com.fasterxml.jackson.databind.AnnotationIntrospector annotationIntrospector) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。直列化とデ直列化の両方にAnnotationIntrospector
を設定します。void
setApplicationContext
(ApplicationContext applicationContext) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。Jackson ハンドラー (JsonSerializer
、JsonDeserializer
、KeyDeserializer
、TypeResolverBuilder
、TypeIdResolver
) をオートワイヤーするには、ビルダーApplicationContext
を設定します。void
setAutoDetectFields
(boolean autoDetectFields) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。MapperFeature.AUTO_DETECT_FIELDS
オプションのショートカット。void
setAutoDetectGetterSetter
(boolean autoDetectGetterSetter) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。MapperFeature.AUTO_DETECT_SETTERS
/MapperFeature.AUTO_DETECT_GETTERS
/MapperFeature.AUTO_DETECT_IS_GETTERS
オプションのショートカット。void
setBeanClassLoader
(ClassLoaderSE beanClassLoader) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。Beanclass loader
SE を Bean インスタンスに提供するコールバック。void
setCreateXmlMapper
(boolean createXmlMapper) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。true に設定され、カスタムObjectMapper
が設定されていない場合は、デフォルトのコンストラクターを使用してXmlMapper
が作成されます。void
setDateFormat
(DateFormatSE dateFormat) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。指定されたDateFormat
SE で日付 / 時刻の形式を定義します。void
setDefaultTyping
(com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> typeResolverBuilder) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。Jackson のデフォルトの入力に使用するTypeResolverBuilder
を指定します。void
setDefaultUseWrapper
(boolean defaultUseWrapper) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。ラッパーがインデックス付き(リスト、配列)プロパティに使用されるかどうかをデフォルトで定義します(XmlMapper
にのみ適用されます)。void
setDefaultViewInclusion
(boolean defaultViewInclusion) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。MapperFeature.DEFAULT_VIEW_INCLUSION
オプションのショートカット。void
setDeserializers
(com.fasterxml.jackson.databind.JsonDeserializer<?>... deserializers) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。カスタムデシリアライザーを構成します。void
setDeserializersByType
(MapSE<ClassSE<?>, com.fasterxml.jackson.databind.JsonDeserializer<?>> deserializers) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。指定された型のカスタムデシリアライザーを構成します。void
setFactory
(com.fasterxml.jackson.core.JsonFactory factory) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。ObjectMapper
インスタンスの作成に使用するJsonFactory
を定義します。void
setFailOnEmptyBeans
(boolean failOnEmptyBeans) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。SerializationFeature.FAIL_ON_EMPTY_BEANS
オプションのショートカット。void
setFailOnUnknownProperties
(boolean failOnUnknownProperties) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES
オプションのショートカット。void
setFeaturesToDisable
(ObjectSE... featuresToDisable) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。無効にする機能を指定します。void
setFeaturesToEnable
(ObjectSE... featuresToEnable) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。有効にする機能を指定します。void
setFilters
(com.fasterxml.jackson.databind.ser.FilterProvider filters) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。@JsonFilter
アノテーション付き POJO をサポートするために使用するグローバルフィルターを設定します。void
setFindModulesViaServiceLoader
(boolean findModules) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。クラスパス内の META-INF メタデータに基づいて、Jackson が JDK ServiceLoader を介して使用可能なモジュールを検索するかどうかを設定します。void
setHandlerInstantiator
(com.fasterxml.jackson.databind.cfg.HandlerInstantiator handlerInstantiator) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。Jackson ハンドラー (JsonSerializer
、JsonDeserializer
、KeyDeserializer
、TypeResolverBuilder
、TypeIdResolver
) の構造をカスタマイズします。void
setIndentOutput
(boolean indentOutput) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。SerializationFeature.INDENT_OUTPUT
オプションのショートカット。void
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。フォーマットに使用するデフォルトのLocale
SE をオーバーライドします。void
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。指定されたクラスまたはインターフェースを補強するために使用するミックスインアノテーションを追加します。void
setModules
(ListSE<com.fasterxml.jackson.databind.Module> modules) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。ObjectMapper
に登録するモジュールの完全なリストを設定します。final void
setModulesToInstall
(ClassSE<? extends com.fasterxml.jackson.databind.Module>... modules) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。ObjectMapper
に登録するクラス (または XML 内のクラス名) 別に 1 つ以上のモジュールを指定します。void
setObjectMapper
(com.fasterxml.jackson.databind.ObjectMapper objectMapper) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。使用するObjectMapper
インスタンスを設定します。void
setPropertyNamingStrategy
(com.fasterxml.jackson.databind.PropertyNamingStrategy propertyNamingStrategy) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。ObjectMapper
を構成するには、PropertyNamingStrategy
を指定します。void
setSerializationInclusion
(com.fasterxml.jackson.annotation.JsonInclude.Include serializationInclusion) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。直列化のカスタム包含戦略を設定します。void
setSerializers
(com.fasterxml.jackson.databind.JsonSerializer<?>... serializers) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。カスタムシリアライザーを構成します。void
setSerializersByType
(MapSE<ClassSE<?>, com.fasterxml.jackson.databind.JsonSerializer<?>> serializers) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。指定された型のカスタムシリアライザーを構成します。void
setSimpleDateFormat
(StringSE format) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。SimpleDateFormat
SE を使用して日付 / 時刻形式を定義します。void
setTimeZone
(TimeZoneSE timeZone) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。フォーマットに使用するデフォルトのTimeZone
SE をオーバーライドします。
コンストラクターの詳細
Jackson2ObjectMapperFactoryBean
public Jackson2ObjectMapperFactoryBean()非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。
メソッドの詳細
setObjectMapper
public void setObjectMapper(com.fasterxml.jackson.databind.ObjectMapper objectMapper) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。使用するObjectMapper
インスタンスを設定します。設定されていない場合は、デフォルトのコンストラクターを使用してObjectMapper
が作成されます。setCreateXmlMapper
public void setCreateXmlMapper(boolean createXmlMapper) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。true に設定され、カスタムObjectMapper
が設定されていない場合は、デフォルトのコンストラクターを使用してXmlMapper
が作成されます。- 導入:
- 4.1
setFactory
public void setFactory(com.fasterxml.jackson.core.JsonFactory factory) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。ObjectMapper
インスタンスの作成に使用するJsonFactory
を定義します。- 導入:
- 5.0
setDateFormat
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。指定されたDateFormat
SE で日付 / 時刻の形式を定義します。メモ: このプロパティを設定すると、Jackson のスレッドセーフルールに従って、公開された
ObjectMapper
は非スレッドセーフになります。- 関連事項:
setSimpleDateFormat
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。SimpleDateFormat
SE を使用して日付 / 時刻形式を定義します。メモ: このプロパティを設定すると、Jackson のスレッドセーフルールに従って、公開された
ObjectMapper
は非スレッドセーフになります。- 関連事項:
setLocale
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。フォーマットに使用するデフォルトのLocale
SE をオーバーライドします。使用されるデフォルト値はLocale.getDefault()
です。- 導入:
- 4.1.5
setTimeZone
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。フォーマットに使用するデフォルトのTimeZone
SE をオーバーライドします。使用されるデフォルト値は UTC です(ローカルタイムゾーンではありません)。- 導入:
- 4.1.5
setAnnotationIntrospector
public void setAnnotationIntrospector(com.fasterxml.jackson.databind.AnnotationIntrospector annotationIntrospector) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。直列化とデ直列化の両方にAnnotationIntrospector
を設定します。setPropertyNamingStrategy
public void setPropertyNamingStrategy(com.fasterxml.jackson.databind.PropertyNamingStrategy propertyNamingStrategy) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。ObjectMapper
を構成するには、PropertyNamingStrategy
を指定します。- 導入:
- 4.0.2
setDefaultTyping
public void setDefaultTyping(com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> typeResolverBuilder) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。Jackson のデフォルトの入力に使用するTypeResolverBuilder
を指定します。- 導入:
- 4.2.2
setSerializationInclusion
public void setSerializationInclusion(com.fasterxml.jackson.annotation.JsonInclude.Include serializationInclusion) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。直列化のカスタム包含戦略を設定します。- 関連事項:
setFilters
public void setFilters(com.fasterxml.jackson.databind.ser.FilterProvider filters) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。@JsonFilter
アノテーション付き POJO をサポートするために使用するグローバルフィルターを設定します。- 導入:
- 4.2
- 関連事項:
setMixIns
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。指定されたクラスまたはインターフェースを補強するために使用するミックスインアノテーションを追加します。- パラメーター:
mixIns
- アノテーションがキーとして効果的にオーバーライドされるターゲットクラス(またはインターフェース)と、アノテーションが値としてターゲットのアノテーションに「追加」されるミックスインクラス(またはインターフェース)を持つエントリのマップ。- 導入:
- 4.1.2
- 関連事項:
setSerializers
public void setSerializers(com.fasterxml.jackson.databind.JsonSerializer<?>... serializers) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。カスタムシリアライザーを構成します。各シリアライザーは、JsonSerializer.handledType()
によって返される型に対して登録されますが、null
であってはなりません。- 関連事項:
setSerializersByType
setDeserializers
public void setDeserializers(com.fasterxml.jackson.databind.JsonDeserializer<?>... deserializers) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。カスタムデシリアライザーを設定します。各デシリアライザーはJsonDeserializer.handledType()
によって返される型に対して登録されます。null
であってはなりません。- 導入:
- 4.3
- 関連事項:
setDeserializersByType
setAutoDetectFields
public void setAutoDetectFields(boolean autoDetectFields) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。MapperFeature.AUTO_DETECT_FIELDS
オプションのショートカット。setAutoDetectGetterSetter
public void setAutoDetectGettersSetters(boolean autoDetectGettersSetters) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。MapperFeature.AUTO_DETECT_SETTERS
/MapperFeature.AUTO_DETECT_GETTERS
/MapperFeature.AUTO_DETECT_IS_GETTERS
オプションのショートカット。setDefaultViewInclusion
public void setDefaultViewInclusion(boolean defaultViewInclusion) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。MapperFeature.DEFAULT_VIEW_INCLUSION
オプションのショートカット。- 導入:
- 4.1
setFailOnUnknownProperties
public void setFailOnUnknownProperties(boolean failOnUnknownProperties) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES
オプションのショートカット。- 導入:
- 4.1.1
setFailOnEmptyBeans
public void setFailOnEmptyBeans(boolean failOnEmptyBeans) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。SerializationFeature.FAIL_ON_EMPTY_BEANS
オプションのショートカット。setIndentOutput
public void setIndentOutput(boolean indentOutput) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。SerializationFeature.INDENT_OUTPUT
オプションのショートカット。setDefaultUseWrapper
public void setDefaultUseWrapper(boolean defaultUseWrapper) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。ラッパーがインデックス付き(リスト、配列)プロパティに使用されるかどうかをデフォルトで定義します(XmlMapper
にのみ適用されます)。- 導入:
- 4.3
setFeaturesToEnable
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。有効にする機能を指定します。- 関連事項:
setFeaturesToDisable
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。無効にする機能を指定します。- 関連事項:
setModules
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。ObjectMapper
に登録するモジュールの完全なリストを設定します。メモ: これが設定されている場合、モジュールの検出は行われません -Jackson でも Spring でもありません(
setFindModulesViaServiceLoader(boolean)
を参照)。結果として、ここで空のリストを指定すると、あらゆる種類のモジュール検出が抑制されます。これまたは
setModulesToInstall(java.lang.Class<? extends com.fasterxml.jackson.databind.Module>...)
の両方ではなく、いずれかを指定します。- 導入:
- 4.0
- 関連事項:
setModulesToInstall
@SafeVarargsSE public final void setModulesToInstall(ClassSE<? extends com.fasterxml.jackson.databind.Module>... modules) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。ObjectMapper
に登録するクラス (または XML 内のクラス名) 別に 1 つ以上のモジュールを指定します。ここで指定されたモジュールは、Spring による JSR-310 の自動検出、または Jackson によるモジュールの検出 (
setFindModulesViaServiceLoader(boolean)
を参照) 後に登録され、最終的にその構成を上書きできるようになります。これまたは
setModules(java.util.List<com.fasterxml.jackson.databind.Module>)
の両方ではなく、いずれかを指定します。- 導入:
- 4.0.1
- 関連事項:
setFindModulesViaServiceLoader
public void setFindModulesViaServiceLoader(boolean findModules) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。クラスパス内の META-INF メタデータに基づいて、Jackson が JDK ServiceLoader を介して使用可能なモジュールを検索するかどうかを設定します。このモードが設定されていない場合、Spring の Jackson2ObjectMapperFactoryBean 自体がクラスパス上で JSR-310 サポートモジュールを見つけようとします。
- 導入:
- 4.0.1
- 関連事項:
setBeanClassLoader
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。インターフェースからコピーされた説明:BeanClassLoaderAware
Beanclass loader
SE を Bean インスタンスに提供するコールバック。通常の Bean プロパティの設定後、ただし
InitializingBean's
InitializingBean.afterPropertiesSet()
メソッドやカスタム init-method などの初期化コールバックの前に呼び出されます。- 次で指定:
- インターフェース
BeanClassLoaderAware
のsetBeanClassLoader
- パラメーター:
beanClassLoader
- 所有クラスローダー
setHandlerInstantiator
public void setHandlerInstantiator(com.fasterxml.jackson.databind.cfg.HandlerInstantiator handlerInstantiator) 非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。Jackson ハンドラー (JsonSerializer
、JsonDeserializer
、KeyDeserializer
、TypeResolverBuilder
、TypeIdResolver
) の構造をカスタマイズします。- 導入:
- 4.1.3
- 関連事項:
setApplicationContext
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。Jackson ハンドラー (JsonSerializer
、JsonDeserializer
、KeyDeserializer
、TypeResolverBuilder
、TypeIdResolver
) をオートワイヤーするには、ビルダーApplicationContext
を設定します。- 次で指定:
- インターフェース
ApplicationContextAware
のsetApplicationContext
- パラメーター:
applicationContext
- このオブジェクトによって使用される ApplicationContext オブジェクト- 導入:
- 4.1.3
- 関連事項:
afterPropertiesSet
public void afterPropertiesSet()非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。インターフェースからコピーされた説明:InitializingBean
すべての Bean プロパティを設定し、BeanFactoryAware
、ApplicationContextAware
などを満たした後、包含BeanFactory
によって呼び出されます。このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。
- 次で指定:
- インターフェース
InitializingBean
のafterPropertiesSet
getObject
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。シングルトン ObjectMapper を返します。- 次で指定:
- インターフェース
FactoryBean<com.fasterxml.jackson.databind.ObjectMapper>
のgetObject
- 戻り値:
- Bean のインスタンス (
null
にすることができます) - 関連事項:
getObjectType
非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。インターフェースからコピーされた説明:FactoryBean
この FactoryBean が作成するオブジェクトの型を返します。事前にわからない場合はnull
を返します。これにより、たとえばオートワイヤーなどで、オブジェクトをインスタンス化せずに特定の型の Bean を確認できます。
シングルトンオブジェクトを作成する実装の場合、このメソッドはシングルトンの作成を可能な限り回避し、事前に型を推定する必要があります。プロトタイプの場合は、ここで意味のある型を返すことも推奨されます。
このメソッドは、この FactoryBean が完全に初期化される前に呼び出すことができます。初期化中に作成された状態に依存しないでください。もちろん、利用可能な場合はそのような状態を引き続き使用できます。
注意 : オートワイヤーは、ここで
null
を返す FactoryBeans を単に無視します。FactoryBean の現在の状態を使用して、このメソッドを適切に実装することを強くお勧めします。- 次で指定:
- インターフェース
FactoryBean<com.fasterxml.jackson.databind.ObjectMapper>
のgetObjectType
- 戻り値:
- この FactoryBean が作成するオブジェクトの型、または呼び出し時に不明な場合は
null
- 関連事項:
isSingleton
public boolean isSingleton()非推奨、削除予定: この API 要素は、将来のバージョンで削除される可能性があります。インターフェースからコピーされた説明:FactoryBean
このファクトリによって管理されるオブジェクトはシングルトンですか? つまり、FactoryBean.getObject()
は常に同じオブジェクト(キャッシュ可能な参照)を返しますか?注意 : FactoryBean がシングルトンオブジェクトを保持していることを示している場合、
getObject()
から返されたオブジェクトは、所有する BeanFactory によってキャッシュされる可能性があります。FactoryBean が常に同じ参照を公開しない限り、true
を返さないでください。FactoryBean 自体のシングルトンステータスは、通常、所有する BeanFactory によって提供されます。通常、そこではシングルトンとして定義する必要があります。
注意 :
false
を返すこのメソッドは、返されるオブジェクトが独立したインスタンスであることを必ずしも示しません。拡張SmartFactoryBean
インターフェースの実装は、SmartFactoryBean.isPrototype()
メソッドを通じて独立したインスタンスを明示的に示す場合があります。この拡張インターフェースを実装しないプレーンなFactoryBean
実装は、isSingleton()
実装がfalse
を返す場合、常に独立したインスタンスを返すと単純に想定されます。FactoryBean
は通常シングルトンインスタンスを管理するため、デフォルトの実装ではtrue
が返されます。- 次で指定:
- インターフェース
FactoryBean<com.fasterxml.jackson.databind.ObjectMapper>
のisSingleton
- 戻り値:
- 公開されたオブジェクトがシングルトンかどうか
- 関連事項: