インターフェース ConfigurableApplicationContext
- すべてのスーパーインターフェース:
ApplicationContext
、ApplicationEventPublisher
、AutoCloseableSE
、BeanFactory
、CloseableSE
、EnvironmentCapable
、HierarchicalBeanFactory
、Lifecycle
、ListableBeanFactory
、MessageSource
、ResourceLoader
、ResourcePatternResolver
- すべての既知のサブインターフェース:
ConfigurableWebApplicationContext
- すべての既知の実装クラス:
AbstractApplicationContext
、AbstractRefreshableApplicationContext
、AbstractRefreshableConfigApplicationContext
、AbstractRefreshableWebApplicationContext
、AbstractXmlApplicationContext
、AnnotationConfigApplicationContext
、AnnotationConfigWebApplicationContext
、ClassPathXmlApplicationContext
、FileSystemXmlApplicationContext
、GenericApplicationContext
、GenericGroovyApplicationContext
、GenericWebApplicationContext
、GenericXmlApplicationContext
、GroovyWebApplicationContext
、StaticApplicationContext
、StaticWebApplicationContext
、XmlWebApplicationContext
ApplicationContext
インターフェースのアプリケーションコンテキストクライアントメソッドに加えて、アプリケーションコンテキストを構成する機能を提供します。構成メソッドとライフサイクルメソッドは、ApplicationContext クライアントコードで明らかにならないように、ここでカプセル化されています。現在のメソッドは、起動コードとシャットダウンコードでのみ使用する必要があります。
- 導入:
- 03.11.2003
- 作成者:
- Juergen Hoeller, Chris Beams, Sam Brannen
フィールドサマリー
修飾子と型フィールド説明static final StringSE
ファクトリ内のApplicationStartup
Bean の名前。static final StringSE
これらの文字は、1 つの文字列値に含まれる複数のコンテキスト設定パス間の区切り文字とみなされます。static final StringSE
ファクトリ内の ConversionService Bean の名前。static final StringSE
ファクトリ内のEnvironment
Bean の名前。static final StringSE
ファクトリ内の LoadTimeWeaver Bean の名前。static final StringSE
シャットダウンフックスレッドのName
: "SpringContextShutdownHook"。static final StringSE
ファクトリのシステム環境 Bean の名前。static final StringSE
ファクトリのシステムプロパティ Bean の名前。インターフェース org.springframework.beans.factory.BeanFactory から継承されたフィールド
FACTORY_BEAN_PREFIX
インターフェース org.springframework.core.io.ResourceLoader から継承されたフィールド
CLASSPATH_URL_PREFIX
インターフェース org.springframework.core.io.support.ResourcePatternResolver から継承されたフィールド
CLASSPATH_ALL_URL_PREFIX
メソッドのサマリー
修飾子と型メソッド説明void
addApplicationListener
(ApplicationListener<?> listener) コンテキストのリフレッシュやシャットダウンなどのコンテキストイベントで通知される新しい ApplicationListener を追加します。void
addBeanFactoryPostProcessor
(BeanFactoryPostProcessor postProcessor) Bean 定義のいずれかが評価される前に、リフレッシュ時にこのアプリケーションコンテキストの内部 Bean ファクトリに適用される新しい BeanFactoryPostProcessor を追加します。void
addProtocolResolver
(ProtocolResolver resolver) 特定のプロトコルリゾルバーをこのアプリケーションコンテキストに登録して、追加のリソースプロトコルを処理できるようにします。void
close()
このアプリケーションコンテキストを閉じて、実装が保持している可能性のあるすべてのリソースとロックを解放します。このアプリケーションコンテキストのApplicationStartup
を返します。このアプリケーションコンテキストの内部 Bean ファクトリを返します。このアプリケーションコンテキストのEnvironment
を構成可能な形式で返し、さらにカスタマイズできるようにします。boolean
isActive()
このアプリケーションコンテキストがアクティブかどうか、つまり、少なくとも 1 回はリフレッシュされ、まだ閉じられていないかどうかを判断します。void
refresh()
Java ベースの構成、XML ファイル、プロパティファイル、リレーショナルデータベーススキーマ、その他の形式の構成の永続的な表現をロードまたはリフレッシュします。void
シャットダウンフックを JVM ランタイムに登録し、その時点ですでに閉じられていない限り、JVM シャットダウン時にこのコンテキストを閉じます。void
removeApplicationListener
(ApplicationListener<?> listener) 指定された ApplicationListener を、以前にaddApplicationListener(org.springframework.context.ApplicationListener<?>)
を介して登録されたと仮定して、このコンテキストのリスナーのセットから削除します。void
setApplicationStartup
(ApplicationStartup applicationStartup) このアプリケーションコンテキストにApplicationStartup
を設定します。void
setClassLoader
(ClassLoaderSE classLoader) クラスパスリソースと Bean クラスをロードする ClassLoader を指定します。void
setEnvironment
(ConfigurableEnvironment environment) このアプリケーションコンテキストのEnvironment
を設定します。void
このアプリケーションコンテキストの一意の ID を設定します。void
setParent
(ApplicationContext parent) このアプリケーションコンテキストの親を設定します。インターフェース org.springframework.context.ApplicationContext から継承されたメソッド
getApplicationName, getAutowireCapableBeanFactory, getDisplayName, getId, getParent, getStartupDate
インターフェース org.springframework.context.ApplicationEventPublisher から継承されたメソッド
publishEvent, publishEvent
インターフェース org.springframework.beans.factory.BeanFactory から継承されたメソッド
containsBean, getAliases, getBean, getBean, getBean, getBean, getBean, getBeanProvider, getBeanProvider, getType, getType, isPrototype, isSingleton, isTypeMatch, isTypeMatch
インターフェース org.springframework.beans.factory.HierarchicalBeanFactory から継承されたメソッド
containsLocalBean, getParentBeanFactory
インターフェース org.springframework.beans.factory.ListableBeanFactory から継承されたメソッド
containsBeanDefinition, findAllAnnotationsOnBean, findAnnotationOnBean, findAnnotationOnBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanProvider, getBeanProvider, getBeansOfType, getBeansOfType, getBeansWithAnnotation
インターフェース org.springframework.context.MessageSource から継承されたメソッド
getMessage, getMessage, getMessage
インターフェース org.springframework.core.io.ResourceLoader から継承されたメソッド
getClassLoader, getResource
インターフェース org.springframework.core.io.support.ResourcePatternResolver から継承されたメソッド
getResources
フィールドの詳細
CONFIG_LOCATION_DELIMITERS
これらの文字は、1 つの文字列値に含まれる複数のコンテキスト設定パス間の区切り文字とみなされます。CONVERSION_SERVICE_BEAN_NAME
ファクトリ内の ConversionService Bean の名前。何も指定しない場合、デフォルトの変換ルールが適用されます。- 導入:
- 3.0
- 関連事項:
LOAD_TIME_WEAVER_BEAN_NAME
ファクトリ内の LoadTimeWeaver Bean の名前。その Bean が提供される場合、コンテキストは、LoadTimeWeaver がすべての実際の Bean クラスを処理できるようにするために、型のマッチングに一時的な ClassLoader を使用します。- 導入:
- 2.5
- 関連事項:
ENVIRONMENT_BEAN_NAME
ファクトリ内のEnvironment
Bean の名前。- 導入:
- 3.1
- 関連事項:
SYSTEM_PROPERTIES_BEAN_NAME
ファクトリのシステムプロパティ Bean の名前。SYSTEM_ENVIRONMENT_BEAN_NAME
ファクトリのシステム環境 Bean の名前。- 関連事項:
APPLICATION_STARTUP_BEAN_NAME
ファクトリ内のApplicationStartup
Bean の名前。- 導入:
- 5.3
- 関連事項:
SHUTDOWN_HOOK_THREAD_NAME
シャットダウンフックスレッドのName
: "SpringContextShutdownHook"。- 導入:
- 5.2
- 関連事項:
メソッドの詳細
setId
このアプリケーションコンテキストの一意の ID を設定します。- 導入:
- 3.0
setParent
このアプリケーションコンテキストの親を設定します。親は変更しないでください。たとえば、WebApplicationContext セットアップの場合など、このクラスのオブジェクトを作成するときに使用できない場合にのみ、コンストラクターの外部で設定する必要があります。
- パラメーター:
parent
- 親コンテキスト- 関連事項:
setEnvironment
このアプリケーションコンテキストのEnvironment
を設定します。- パラメーター:
environment
- 新しい環境- 導入:
- 3.1
getEnvironment
ConfigurableEnvironment getEnvironment()このアプリケーションコンテキストのEnvironment
を構成可能な形式で返し、さらにカスタマイズできるようにします。- 次で指定:
- インターフェース
EnvironmentCapable
のgetEnvironment
- 導入:
- 3.1
setApplicationStartup
このアプリケーションコンテキストにApplicationStartup
を設定します。これにより、アプリケーションコンテキストは起動時にメトリクスを記録できます。
- パラメーター:
applicationStartup
- 新しいコンテキストイベントファクトリ- 導入:
- 5.3
getApplicationStartup
ApplicationStartup getApplicationStartup()このアプリケーションコンテキストのApplicationStartup
を返します。- 導入:
- 5.3
addBeanFactoryPostProcessor
Bean 定義のいずれかが評価される前に、リフレッシュ時にこのアプリケーションコンテキストの内部 Bean ファクトリに適用される新しい BeanFactoryPostProcessor を追加します。コンテキスト設定中に呼び出されます。- パラメーター:
postProcessor
- 登録するファクトリプロセッサー
addApplicationListener
コンテキストのリフレッシュやシャットダウンなどのコンテキストイベントで通知される新しい ApplicationListener を追加します。ここに登録されている ApplicationListener は、コンテキストがまだアクティブでない場合はリフレッシュ時に適用されます。コンテキストがすでにアクティブな場合は、現在のイベントマルチキャスターでオンザフライで適用されます。
- パラメーター:
listener
- 登録する ApplicationListener- 関連事項:
removeApplicationListener
指定された ApplicationListener を、以前にaddApplicationListener(org.springframework.context.ApplicationListener<?>)
を介して登録されたと仮定して、このコンテキストのリスナーのセットから削除します。- パラメーター:
listener
- 登録解除する ApplicationListener- 導入:
- 6.0
setClassLoader
クラスパスリソースと Bean クラスをロードする ClassLoader を指定します。このコンテキストクラスローダーは、内部 Bean ファクトリに渡されます。
addProtocolResolver
特定のプロトコルリゾルバーをこのアプリケーションコンテキストに登録して、追加のリソースプロトコルを処理できるようにします。そのようなリゾルバーは、このコンテキストの標準の解決ルールより先に呼び出されます。デフォルトのルールも上書きする可能性があります。
- 導入:
- 4.3
refresh
Java ベースの構成、XML ファイル、プロパティファイル、リレーショナルデータベーススキーマ、その他の形式の構成の永続的な表現をロードまたはリフレッシュします。これはスタートアップメソッドであるため、リソースがぶら下がらないように、失敗した場合はすでに作成されているシングルトンを破棄する必要があります。つまり、このメソッドを呼び出した後は、シングルトンをインスタンス化するか、まったくインスタンス化しないかのどちらかです。
- 例外:
BeansException
- Bean ファクトリを初期化できなかった場合IllegalStateExceptionSE
- すでに初期化されていて、複数回のリフレッシュ試行がサポートされていない場合
registerShutdownHook
void registerShutdownHook()シャットダウンフックを JVM ランタイムに登録し、その時点ですでに閉じられていない限り、JVM シャットダウン時にこのコンテキストを閉じます。このメソッドは複数回呼び出すことができます。各コンテキストインスタンスに登録されるシャットダウンフックは(最大で)1 つだけです。
Spring Framework 5.2 では、シャットダウンフックスレッドの名前は
SHUTDOWN_HOOK_THREAD_NAME
である必要があります。close
void close()このアプリケーションコンテキストを閉じ、実装が保持している可能性があるすべてのリソースとロックを解放します。これには、キャッシュされたすべてのシングルトン Bean の破棄が含まれます。メモ: 親コンテキストで
close
を呼び出しません。親コンテキストには、独自の独立したライフサイクルがあります。このメソッドは、副作用なしに複数回呼び出すことができます。すでに閉じられているコンテキストに対する後続の
close
呼び出しは無視されます。- 次で指定:
- インターフェース
AutoCloseableSE
のclose
- 次で指定:
- インターフェース
CloseableSE
のclose
isActive
boolean isActive()このアプリケーションコンテキストがアクティブかどうか、つまり、少なくとも 1 回はリフレッシュされ、まだ閉じられていないかどうかを判断します。- 戻り値:
- コンテキストがまだアクティブかどうか
- 関連事項:
getBeanFactory
このアプリケーションコンテキストの内部 Bean ファクトリを返します。基になるファクトリの特定の機能にアクセスするために使用できます。メモ: これを Bean ファクトリの後処理に使用しないでください。シングルトンはすでにインスタンス化されています。Bean に触れる前に、BeanFactoryPostProcessor を使用して BeanFactory セットアッププロセスをインターセプトします。
通常、この内部ファクトリには、コンテキストがアクティブな間、つまり
refresh()
とclose()
の間のみでアクセスできます。isActive()
フラグを使用して、コンテキストが適切な状態にあるかどうかを確認できます。- 戻り値:
- 基礎となる Bean ファクトリ
- 例外:
IllegalStateExceptionSE
- コンテキストが内部 Bean ファクトリを保持していない場合 (通常、refresh()
がまだ呼び出されていない場合、close()
がすでに呼び出されている場合)- 関連事項: