クラス GenericApplicationContext
- 実装されているすべてのインターフェース:
CloseableSE、AutoCloseableSE、BeanFactory、HierarchicalBeanFactory、ListableBeanFactory、BeanDefinitionRegistry、ApplicationContext、ApplicationEventPublisher、ConfigurableApplicationContext、Lifecycle、MessageSource、AliasRegistry、EnvironmentCapable、ResourceLoader、ResourcePatternResolver
- 既知の直属サブクラス
AnnotationConfigApplicationContext、GenericGroovyApplicationContext、GenericWebApplicationContext、GenericXmlApplicationContext、StaticApplicationContext
DefaultListableBeanFactory インスタンスを保持し、特定の Bean 定義フォーマットを想定しない汎用 ApplicationContext 実装。Bean 定義リーダーを適用できるようにするために、BeanDefinitionRegistry インターフェースを実装します。 一般的な使用箇所は、BeanDefinitionRegistry インターフェースを介してさまざまな Bean 定義を登録し、AbstractApplicationContext.refresh() を呼び出して、アプリケーションコンテキストセマンティクス(ApplicationContextAware の処理、BeanFactoryPostProcessors の自動検出など)でそれらの Bean を初期化することです。
リフレッシュごとに新しい内部 BeanFactory インスタンスを作成する他の ApplicationContext 実装とは対照的に、このコンテキストの内部 BeanFactory は、その上で Bean 定義を登録できるように、最初から利用可能です。AbstractApplicationContext.refresh() は一度しか呼び出せません。
この ApplicationContext 実装は、通常の AbstractApplicationContext.refresh() の代わりに refreshForAotProcessing(org.springframework.aot.hint.RuntimeHints) を使用して、事前処理に適しています。
使用例:
GenericApplicationContext ctx = new GenericApplicationContext();
XmlBeanDefinitionReader xmlReader = new XmlBeanDefinitionReader(ctx);
xmlReader.loadBeanDefinitions(new ClassPathResource("applicationContext.xml"));
PropertiesBeanDefinitionReader propReader = new PropertiesBeanDefinitionReader(ctx);
propReader.loadBeanDefinitions(new ClassPathResource("otherBeans.properties"));
ctx.refresh();
MyBean myBean = (MyBean) ctx.getBean("myBean");
...XML Bean 定義の典型的なケースでは、設定が簡単な ClassPathXmlApplicationContext または FileSystemXmlApplicationContext を使用することもできますが、任意の Bean 定義形式を混在させるのではなく、XML Bean 定義に標準のリソースの場所を使用できるため、柔軟性は低くなります。リフレッシュ可能な方法で特定の Bean 定義形式を読み取ることになっているカスタムアプリケーションコンテキストの実装については、AbstractRefreshableApplicationContext 基本クラスから派生させることを検討してください。- 導入:
- 1.1.2
- 作成者:
- Juergen Hoeller, Chris Beams, Stephane Nicoll, Sam Brannen
- 関連事項:
ネストされたクラスの要約
クラス org.springframework.core.io.DefaultResourceLoader から継承されたネストクラス / インターフェース
DefaultResourceLoader.ClassPathContextResourceフィールドのサマリー
クラス org.springframework.context.support.AbstractApplicationContext から継承されたフィールド
APPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAMEインターフェース org.springframework.beans.factory.BeanFactory から継承されたフィールド
FACTORY_BEAN_PREFIXインターフェース org.springframework.context.ConfigurableApplicationContext から継承されたフィールド
APPLICATION_STARTUP_BEAN_NAME, CONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SHUTDOWN_HOOK_THREAD_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAMEインターフェース org.springframework.core.io.ResourceLoader から継承されたフィールド
CLASSPATH_URL_PREFIXインターフェース org.springframework.core.io.support.ResourcePatternResolver から継承されたフィールド
CLASSPATH_ALL_URL_PREFIXコンストラクターの概要
コンストラクターコンストラクター説明新しい GenericApplicationContext を作成します。GenericApplicationContext(DefaultListableBeanFactory beanFactory) 指定された DefaultListableBeanFactory で新しい GenericApplicationContext を作成します。GenericApplicationContext(DefaultListableBeanFactory beanFactory, ApplicationContext parent) 指定された DefaultListableBeanFactory で新しい GenericApplicationContext を作成します。指定された親を持つ新しい GenericApplicationContext を作成します。メソッドのサマリー
修飾子と型メソッド説明protected voidこのコンテキストのリフレッシュ試行をキャンセルし、例外がスローされた後にactiveフラグをリセットします。protected final voidやることはあまりない: リリースされない単一の内部 BeanFactory を保持しています。すでに利用可能な場合、このコンテキストの内部 Bean ファクトリを AutowireCapableBeanFactory として返します。getBeanDefinition(StringSE beanName) 指定された Bean 名の BeanDefinition を返します。このコンテキストが保持する単一の内部 BeanFactory を(ConfigurableListableBeanFactory として)返します。クラスパスリソースをロードする ClassLoader を返します。Bean 定義の登録に使用できる、このコンテキストの基になる Bean ファクトリを返します。getResource(StringSE location) この実装は、設定されている場合はこのコンテキストのResourceLoaderに委譲し、そうでない場合はデフォルトのスーパークラスの動作にフォールバックします。Resource[]getResources(StringSE locationPattern) この実装は、ResourcePatternResolver インターフェースを実装している場合は、このコンテキストの ResourceLoader に委譲し、そうでない場合は、デフォルトのスーパークラスの動作にフォールバックします。boolean指定された名前がエイリアスとして定義されているかどうかを確認します(実際に登録されたコンポーネントの名前ではなく)。booleanisBeanNameInUse(StringSE beanName) 指定された Bean 名がこのレジストリ内ですでに使用されているかどうか、つまりprotected final void何もしない: 単一の内部 BeanFactory を保持し、public メソッド(または BeanFactory's)を通じて Bean を登録するために呼び出し元に依存しています。voidrefreshForAotProcessing(RuntimeHints runtimeHints) 基盤となる Bean ファクトリが Bean インスタンスを作成する準備が整うまで、構成の永続的な表現をロードまたはリフレッシュします。voidregisterAlias(StringSE beanName, StringSE alias) 名前を指定して、そのエイリアスを登録します。<T> voidregisterBean(ClassSE<T> beanClass, ObjectSE... constructorArgs) 指定された Bean クラスから Bean を登録し、オプションでオートワイヤープロセスでの考慮のために明示的なコンストラクター引数を提供します。final <T> voidregisterBean(ClassSE<T> beanClass, SupplierSE<T> supplier, BeanDefinitionCustomizer... customizers) 新しいインスタンス(通常はラムダ式またはメソッド参照として宣言される)を取得するために指定されたサプライヤーを使用して、指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータをカスタマイズします(再び通常ラムダ式として宣言される)。final <T> voidregisterBean(ClassSE<T> beanClass, BeanDefinitionCustomizer... customizers) 指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータ(通常はラムダ式として宣言されます)をカスタマイズします。<T> voidregisterBean(StringSE beanName, ClassSE<T> beanClass, ObjectSE... constructorArgs) 指定された Bean クラスから Bean を登録し、オプションでオートワイヤープロセスでの考慮のために明示的なコンストラクター引数を提供します。<T> voidregisterBean(StringSE beanName, ClassSE<T> beanClass, SupplierSE<T> supplier, BeanDefinitionCustomizer... customizers) 新しいインスタンス(通常はラムダ式またはメソッド参照として宣言される)を取得するために指定されたサプライヤーを使用して、指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータをカスタマイズします(再び通常ラムダ式として宣言される)。final <T> voidregisterBean(StringSE beanName, ClassSE<T> beanClass, BeanDefinitionCustomizer... customizers) 指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータ(通常はラムダ式として宣言されます)をカスタマイズします。voidregisterBeanDefinition(StringSE beanName, BeanDefinition beanDefinition) このレジストリに新しい Bean 定義を登録します。voidremoveAlias(StringSE alias) このレジストリから指定されたエイリアスを削除します。voidremoveBeanDefinition(StringSE beanName) 指定された名前の BeanDefinition を削除します。voidsetAllowBeanDefinitionOverriding(boolean allowBeanDefinitionOverriding) 同じ名前で別の定義を登録し、前者を自動的に置き換えて、Bean 定義をオーバーライドできるようにするかどうかを設定します。voidsetAllowCircularReferences(boolean allowCircularReferences) Bean 間の循環参照を許可するかどうかを設定し、自動的に解決しようとします。voidsetApplicationStartup(ApplicationStartup applicationStartup) このアプリケーションコンテキストにApplicationStartupを設定します。voidsetClassLoader(ClassLoaderSE classLoader) クラスパスリソースをロードする ClassLoader、または実際のリソースアクセス時にスレッドコンテキストクラスローダーを使用するためのnullを指定します。voidsetParent(ApplicationContext parent) このアプリケーションコンテキストの親を設定し、それに応じて内部 BeanFactory の親も設定します。voidsetResourceLoader(ResourceLoader resourceLoader) このコンテキストに使用する ResourceLoader を設定します。クラス org.springframework.context.support.AbstractApplicationContext から継承されたメソッド
addApplicationListener, addBeanFactoryPostProcessor, assertBeanFactoryActive, close, containsBean, containsBeanDefinition, containsLocalBean, createEnvironment, destroyBeans, doClose, findAllAnnotationsOnBean, findAnnotationOnBean, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getApplicationName, getApplicationStartup, getBean, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanProvider, getBeanProvider, getBeanProvider, getBeanProvider, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getResourcePatternResolver, getStartupDate, getType, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, initPropertySources, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, isTypeMatch, obtainFreshBeanFactory, onClose, onRefresh, postProcessBeanFactory, prepareBeanFactory, prepareRefresh, publishEvent, publishEvent, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, removeApplicationListener, resetCommonCaches, setDisplayName, setEnvironment, setId, start, stop, toStringクラス org.springframework.core.io.DefaultResourceLoader から継承されたメソッド
addProtocolResolver, clearResourceCaches, getProtocolResolvers, getResourceByPath, getResourceCacheクラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSEインターフェース org.springframework.core.AliasRegistry から継承されたメソッド
getAliasesインターフェース org.springframework.beans.factory.support.BeanDefinitionRegistry から継承されたメソッド
containsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNamesインターフェース org.springframework.context.ConfigurableApplicationContext から継承されたメソッド
addProtocolResolver
コンストラクターの詳細
GenericApplicationContext
public GenericApplicationContext()新しい GenericApplicationContext を作成します。GenericApplicationContext
指定された DefaultListableBeanFactory で新しい GenericApplicationContext を作成します。- パラメーター:
beanFactory- このコンテキストに使用する DefaultListableBeanFactory インスタンス- 関連事項:
GenericApplicationContext
指定された親を持つ新しい GenericApplicationContext を作成します。- パラメーター:
parent- 親アプリケーションのコンテキスト- 関連事項:
GenericApplicationContext
指定された DefaultListableBeanFactory で新しい GenericApplicationContext を作成します。- パラメーター:
beanFactory- このコンテキストに使用する DefaultListableBeanFactory インスタンスparent- 親アプリケーションのコンテキスト- 関連事項:
メソッドの詳細
setParent
このアプリケーションコンテキストの親を設定し、それに応じて内部 BeanFactory の親も設定します。- 次で指定:
- インターフェース
ConfigurableApplicationContextのsetParent - オーバーライド:
- クラス
AbstractApplicationContextのsetParent - パラメーター:
parent- 親コンテキスト- 関連事項:
setApplicationStartup
インターフェースからコピーされた説明:ConfigurableApplicationContextこのアプリケーションコンテキストにApplicationStartupを設定します。これにより、アプリケーションコンテキストは起動時にメトリクスを記録できます。
- 次で指定:
- インターフェース
ConfigurableApplicationContextのsetApplicationStartup - オーバーライド:
- クラス
AbstractApplicationContextのsetApplicationStartup - パラメーター:
applicationStartup- 新しいコンテキストイベントファクトリ
setAllowBeanDefinitionOverriding
public void setAllowBeanDefinitionOverriding(boolean allowBeanDefinitionOverriding) 同じ名前で別の定義を登録し、前者を自動的に置き換えることにより、Bean 定義のオーバーライドを許可するかどうかを設定します。そうでない場合は、例外がスローされます。デフォルトは "true" です。setAllowCircularReferences
public void setAllowCircularReferences(boolean allowCircularReferences) Bean 間の循環参照を許可するかどうかを設定し、自動的に解決しようとします。デフォルトは "true" です。これをオフにすると、循環参照が発生したときに例外がスローされ、完全に許可されなくなります。
setResourceLoader
このコンテキストで使用する ResourceLoader を設定します。設定されている場合、コンテキストはすべてのgetResource呼び出しを指定された ResourceLoader に委譲します。設定されていない場合、デフォルトのリソース読み込みが適用されます。カスタム ResourceLoader を指定する主な理由は、特定のメソッドでリソースパス(URL 接頭辞なし)を解決するためです。デフォルトの動作では、クラスパスの場所などのパスを解決します。リソースパスをファイルシステムの場所として解決するには、ここで FileSystemResourceLoader を指定します。
完全な ResourcePatternResolver を渡すこともできます。これはコンテキストによって自動検出され、
getResources呼び出しにも使用されます。そうでない場合は、デフォルトのリソースパターンマッチングが適用されます。getResource
この実装は、設定されている場合はこのコンテキストのResourceLoaderに委譲し、そうでない場合はデフォルトのスーパークラスの動作にフォールバックします。Spring Framework 5.3.22 の時点で、このメソッドは、カスタム
ResourceLoaderが設定されている場合、登録されたプロトコルリゾルバーも尊重します。- 次で指定:
- インターフェース
ResourceLoaderのgetResource - オーバーライド:
- クラス
DefaultResourceLoaderのgetResource - パラメーター:
location- リソースの場所- 戻り値:
- 対応する
Resourceハンドル (非null) - 関連事項:
getResources
この実装は、ResourcePatternResolver インターフェースを実装している場合は、このコンテキストの ResourceLoader に委譲し、そうでない場合は、デフォルトのスーパークラスの動作にフォールバックします。- 次で指定:
- インターフェース
ResourcePatternResolverのgetResources - オーバーライド:
- クラス
AbstractApplicationContextのgetResources - パラメーター:
locationPattern- 解決する位置パターン- 戻り値:
- 対応する
Resourceオブジェクト - 例外:
IOExceptionSE- I/O エラーの場合- 関連事項:
setClassLoader
クラスからコピーされた説明:DefaultResourceLoaderクラスパスリソースをロードする ClassLoader、または実際のリソースアクセス時にスレッドコンテキストクラスローダーを使用するためのnullを指定します。デフォルトでは、ClassLoader アクセスは、実際のリソースアクセス時にスレッドコンテキストクラスローダーを使用して行われます(5.3 以降)。
getClassLoader
クラスからコピーされた説明:DefaultResourceLoaderクラスパスリソースをロードする ClassLoader を返します。このリソースローダーによって作成されたすべての ClassPathResource オブジェクトの ClassPathResource のコンストラクターに渡されます。
- 次で指定:
- インターフェース
ResourceLoaderのgetClassLoader - オーバーライド:
- クラス
DefaultResourceLoaderのgetClassLoader - 戻り値:
ClassLoader(システムClassLoaderにさえアクセスできない場合は、nullのみ)- 関連事項:
refreshBeanFactory
何もしない: 単一の内部 BeanFactory を保持し、public メソッド(または BeanFactory's)を通じて Bean を登録するために呼び出し元に依存しています。- 次で指定:
- クラス
AbstractApplicationContextのrefreshBeanFactory - 例外:
IllegalStateExceptionSE- すでに初期化されていて、複数回のリフレッシュ試行がサポートされていない場合- 関連事項:
cancelRefresh
クラスからコピーされた説明:AbstractApplicationContextこのコンテキストのリフレッシュ試行をキャンセルし、例外がスローされた後にactiveフラグをリセットします。- オーバーライド:
- クラス
AbstractApplicationContextのcancelRefresh - パラメーター:
ex- キャンセルに至った例外
closeBeanFactory
protected final void closeBeanFactory()やることはあまりない: リリースされない単一の内部 BeanFactory を保持しています。- 次で指定:
- クラス
AbstractApplicationContextのcloseBeanFactory
getBeanFactory
このコンテキストが保持する単一の内部 BeanFactory を(ConfigurableListableBeanFactory として)返します。- 次で指定:
- インターフェース
ConfigurableApplicationContextのgetBeanFactory - 次で指定:
- クラス
AbstractApplicationContextのgetBeanFactory - 戻り値:
- このアプリケーションコンテキストの内部 Bean ファクトリ (非
null) - 関連事項:
getDefaultListableBeanFactory
Bean 定義の登録に使用できる、このコンテキストの基になる Bean ファクトリを返します。注意 : Bean ファクトリとそれに含まれる Bean をアプリケーションコンテキストセマンティクス(BeanFactoryPostProcessors の自動検出など)で初期化するには、
AbstractApplicationContext.refresh()を呼び出す必要があります。- 戻り値:
- 内部 Bean ファクトリ (DefaultListableBeanFactory として)
getAutowireCapableBeanFactory
クラスからコピーされた説明:AbstractApplicationContextすでに利用可能な場合、このコンテキストの内部 Bean ファクトリを AutowireCapableBeanFactory として返します。- 次で指定:
- インターフェース
ApplicationContextのgetAutowireCapableBeanFactory - オーバーライド:
- クラス
AbstractApplicationContextのgetAutowireCapableBeanFactory - 戻り値:
- このコンテキストの AutowireCapableBeanFactory
- 例外:
IllegalStateExceptionSE- コンテキストがAutowireCapableBeanFactoryインターフェースをサポートしていない場合、またはオートワイヤー可能な Bean ファクトリをまだ保持していない場合(たとえば、refresh()が呼び出されたことがない場合)、コンテキストがすでに閉じられている場合- 関連事項:
registerBeanDefinition
public void registerBeanDefinition(StringSE beanName, BeanDefinition beanDefinition) throws BeanDefinitionStoreException インターフェースからコピーされた説明:BeanDefinitionRegistryこのレジストリに新しい Bean 定義を登録します。RootBeanDefinition および ChildBeanDefinition をサポートする必要があります。- 次で指定:
- インターフェース
BeanDefinitionRegistryのregisterBeanDefinition - パラメーター:
beanName- 登録する Bean インスタンスの名前beanDefinition- 登録する Bean インスタンスの定義- 例外:
BeanDefinitionStoreException- BeanDefinition が無効な場合BeanDefinitionOverrideException- 指定された Bean 名の BeanDefinition がすでに存在し、それをオーバーライドすることが許可されていない場合- 関連事項:
removeBeanDefinition
インターフェースからコピーされた説明:BeanDefinitionRegistry指定された名前の BeanDefinition を削除します。- 次で指定:
- インターフェース
BeanDefinitionRegistryのremoveBeanDefinition - パラメーター:
beanName- 登録する Bean インスタンスの名前- 例外:
NoSuchBeanDefinitionException- そのような Bean 定義がない場合
getBeanDefinition
インターフェースからコピーされた説明:BeanDefinitionRegistry指定された Bean 名の BeanDefinition を返します。- 次で指定:
- インターフェース
BeanDefinitionRegistryのgetBeanDefinition - パラメーター:
beanName- 定義を検索する Bean の名前- 戻り値:
- 指定された名前の BeanDefinition (非
null) - 例外:
NoSuchBeanDefinitionException- そのような Bean 定義がない場合
isBeanNameInUse
インターフェースからコピーされた説明:BeanDefinitionRegistry指定された Bean 名がこのレジストリ内ですでに使用されているかどうか、つまり、この名前でローカル Bean またはエイリアスが登録されているかどうかを確認します。- 次で指定:
- インターフェース
BeanDefinitionRegistryのisBeanNameInUse - パラメーター:
beanName- チェックする名前- 戻り値:
- 指定された Bean 名がすでに使用されているかどうか
registerAlias
インターフェースからコピーされた説明:AliasRegistry名前を指定して、そのエイリアスを登録します。- 次で指定:
- インターフェース
AliasRegistryのregisterAlias - パラメーター:
beanName- 正規名alias- 登録されるエイリアス
removeAlias
インターフェースからコピーされた説明:AliasRegistryこのレジストリから指定されたエイリアスを削除します。- 次で指定:
- インターフェース
AliasRegistryのremoveAlias - パラメーター:
alias- 削除するエイリアス
isAlias
インターフェースからコピーされた説明:AliasRegistry指定された名前がエイリアスとして定義されているかどうかを確認します(実際に登録されたコンポーネントの名前ではなく)。- 次で指定:
- インターフェース
AliasRegistryのisAlias - パラメーター:
beanName- チェックする名前- 戻り値:
- 与えられた名前がエイリアスかどうか
refreshForAotProcessing
基盤となる Bean ファクトリが Bean インスタンスを作成する準備が整うまで、構成の永続的な表現をロードまたはリフレッシュします。AbstractApplicationContext.refresh()のこのバリアントは、通常はビルド時にアプリケーションコンテキストを最適化する Ahead of Time (AOT) 処理によって使用されます。このモードでは、
BeanDefinitionRegistryPostProcessorとMergedBeanDefinitionPostProcessorのみが呼び出されます。- パラメーター:
runtimeHints- 実行時のヒント- 例外:
BeansException- Bean ファクトリを初期化できなかった場合IllegalStateExceptionSE- すでに初期化されていて、複数回のリフレッシュ試行がサポートされていない場合- 導入:
- 6.0
registerBean
指定された Bean クラスから Bean を登録し、オプションでオートワイヤープロセスでの考慮のために明示的なコンストラクター引数を提供します。- パラメーター:
beanClass- Bean のクラスconstructorArgs- Spring のコンストラクター解決アルゴリズムにフィードされるカスタム引数値。すべての引数または特定の引数のみを解決し、残りは通常のオートワイヤーによって解決されます (nullまたは空の場合があります)- 導入:
- 5.2 (AnnotationConfigApplicationContext サブクラスの 5.0 以降)
registerBean
public <T> void registerBean(@Nullable StringSE beanName, ClassSE<T> beanClass, ObjectSE... constructorArgs) 指定された Bean クラスから Bean を登録し、オプションでオートワイヤープロセスでの考慮のために明示的なコンストラクター引数を提供します。- パラメーター:
beanName- Bean の名前 (nullの場合があります)beanClass- Bean のクラスconstructorArgs- Spring のコンストラクター解決アルゴリズムにフィードされるカスタム引数値。すべての引数または特定の引数のみを解決し、残りは通常のオートワイヤーによって解決されます (nullまたは空の場合があります)- 導入:
- 5.2 (AnnotationConfigApplicationContext サブクラスの 5.0 以降)
registerBean
指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータ(通常はラムダ式として宣言されます)をカスタマイズします。- パラメーター:
beanClass- Bean のクラス (自動接続される public コンストラクターを解決します。おそらくデフォルトのコンストラクターだけです)customizers- ファクトリのBeanDefinitionをカスタマイズするための 1 つ以上のコールバック。lazy-init またはプライマリフラグの設定- 導入:
- 5.0
- 関連事項:
registerBean
public final <T> void registerBean(@Nullable StringSE beanName, ClassSE<T> beanClass, BeanDefinitionCustomizer... customizers) 指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータ(通常はラムダ式として宣言されます)をカスタマイズします。- パラメーター:
beanName- Bean の名前 (nullの場合があります)beanClass- Bean のクラス (自動接続される public コンストラクターを解決します。おそらくデフォルトのコンストラクターだけです)customizers- ファクトリのBeanDefinitionをカスタマイズするための 1 つ以上のコールバック。lazy-init またはプライマリフラグの設定- 導入:
- 5.0
- 関連事項:
registerBean
public final <T> void registerBean(ClassSE<T> beanClass, SupplierSE<T> supplier, BeanDefinitionCustomizer... customizers) 新しいインスタンス(通常はラムダ式またはメソッド参照として宣言される)を取得するために指定されたサプライヤーを使用して、指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータをカスタマイズします(再び通常ラムダ式として宣言される)。- パラメーター:
beanClass- Bean のクラスsupplier- Bean のインスタンスを作成するためのコールバックcustomizers- ファクトリのBeanDefinitionをカスタマイズするための 1 つ以上のコールバック。lazy-init またはプライマリフラグの設定- 導入:
- 5.0
- 関連事項:
registerBean
public <T> void registerBean(@Nullable StringSE beanName, ClassSE<T> beanClass, @Nullable SupplierSE<T> supplier, BeanDefinitionCustomizer... customizers) 新しいインスタンス(通常はラムダ式またはメソッド参照として宣言される)を取得するために指定されたサプライヤーを使用して、指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータをカスタマイズします(再び通常ラムダ式として宣言される)。このメソッドをオーバーライドして、すべての
registerBeanメソッドに登録メカニズムを適合させることができます(これらはすべてこのメソッドに委譲されるため)。- パラメーター:
beanName- Bean の名前 (nullの場合があります)beanClass- Bean のクラスsupplier- Bean のインスタンスを作成するためのコールバック (nullの場合、public コンストラクターを解決して代わりにオートワイヤーする)customizers- ファクトリのBeanDefinitionをカスタマイズするための 1 つ以上のコールバック。lazy-init またはプライマリフラグの設定- 導入:
- 5.0