public interface ApplicationContextAware extends Aware
ApplicationContext
の通知を希望するオブジェクトによって実装されるインターフェース。このインターフェースの実装は、たとえば、オブジェクトが一連のコラボレーション Bean にアクセスする必要がある場合に意味があります。Bean 参照を介した構成は、Bean ルックアップ目的のためだけにこのインターフェースを実装するよりも望ましいことに注意してください。
このインターフェースは、オブジェクトがファイルリソースにアクセスする必要がある場合、つまり getResource
を呼び出したい場合、アプリケーションイベントを公開したい場合、MessageSource にアクセスしたい場合にも実装できます。ただし、このような特定のシナリオでは、より具体的な ResourceLoaderAware
、ApplicationEventPublisherAware
または MessageSourceAware
インターフェースを実装することをお勧めします。
ファイルリソースの依存関係は、Bean ファクトリによる自動型変換を使用して文字列を介して入力される、型 Resource
の Bean プロパティとして公開することもできます。これにより、特定のファイルリソースにアクセスするためだけにコールバックインターフェースを実装する必要がなくなります。
ApplicationObjectSupport
は、アプリケーションオブジェクトの便利な基本クラスであり、このインターフェースを実装しています。
すべての Bean ライフサイクルメソッドのリストについては、BeanFactory javadoc
を参照してください。
ResourceLoaderAware
, ApplicationEventPublisherAware
, MessageSourceAware
, ApplicationObjectSupport
, BeanFactoryAware
修飾子と型 | メソッドと説明 |
---|---|
void | setApplicationContext(ApplicationContext applicationContext) このオブジェクトが実行される ApplicationContext を設定します。 |
void setApplicationContext(ApplicationContext applicationContext) throws BeansException
通常の Bean プロパティの設定後、ただし InitializingBean.afterPropertiesSet()
またはカスタム init メソッドなどの init コールバックの前に呼び出されます。ResourceLoaderAware.setResourceLoader(org.springframework.core.io.ResourceLoader)
、ApplicationEventPublisherAware.setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher)
および MessageSourceAware
の後に呼び出されます(該当する場合)。
applicationContext
- このオブジェクトによって使用される ApplicationContext オブジェクト ApplicationContextException
- コンテキスト初期化エラーの場合 BeansException
- アプリケーションコンテキストメソッドによってスローされた場合 BeanInitializationException