4. ApplicationContext
Spring Framework 4章 ApplicationContext
- 4.1. ApplicationContext
- 4.2. MessageSource
- 4.3. イベントの伝播
- 4.4. Web アプリケーションでの ApplicationContext の利用
4.1. ApplicationContext
Spring には BeanFactory を拡張し、多機能化した ApplicationContext が用意されています。ApplicationContext は BeanFactory の有する機能以外に以下の機能を有します。メモリの使用量に厳しい制限がある場合を除き BeanFactory よりも ApplicationContext を使用することが推奨されています。
- i18n を考慮したメッセージへのアクセス
- URL やファイルのようなリソースへのアクセス
- ApplicationListener インタフェースを実装したビーンへのイベントの伝播
- 複数のコンテキストをロード可能
ApplicationContext の生成は BeanFactory の生成とほとんど変わりません。以下のようにします。
ApplicationContext appContext = new FileSystemXmlApplicationContext("beans.xml");
BeanFactory の場合と同様クラスパスから Bean 定義ファイルを取得することもできます。
ApplicationContext appContext = new ClassPathXmlApplicationContext("beans.xml");
また BeanFactory とは異なり ApplicationContext では Bean 設定ファイルを複数読み込むことができます。
String[] configs = {"beans-common.xml", "beans-user.xml"}; ApplicationContext context = new ClassPathXmlApplicationContext(configs);