ApplicationContext
2486 ワード
ApplicationContextはBeanFactoryインタフェースのサブインタフェースであり、BeanFactoryの機能を強化し、contextパッケージの下にある.多くの場合、ApplicationContextでは、手動で作成することなく宣言的にコンテナを操作できます.ContextLoaderのようなサポートクラスを利用して、Webアプリケーションの起動時に自動的にApplicationContextを作成することができます.もちろん、プログラミング方式でApplicationContextを作成することもできます.
Contextの基本は、BeanFactoryインタフェースを継承し、BeanFactoryのすべての機能を提供するApplicationContextインタフェースです.よりフレームワーク向けに動作するために、contextパッケージでは、階層化されたコンテキストクラスと継承関係のあるコンテキストクラスが使用されます.以下のものが含まれます.
1. MessageSourceは、国際化のサポートを提供します.
2. URLやファイルなどのリソースアクセス.
3. イベント転送.
4. 複数のプロファイルをロードします.
ApplicationContextにはBeanFactoryのすべての機能が含まれているので、ApplicationContextを優先的に使用することをお勧めします.BeanFactoryを使用することは、一部のメモリで非常に重要なアプリケーションでない限り考慮されません.
SpringがApplicationContextに提供する3つの実装は、次のとおりです.
ClassPathXmlApplicationContext
FileSystemXmlApplicationContext
XmlWebApplicationContext
ここでXmlWebApplicationContextはWebエンジニアリング専用にカスタマイズされています.使用例は次のとおりです.
1.
2.
3.
本文は
http://zhaohe162.blog.163.com/blog/static/38216797201141551726177/
Contextの基本は、BeanFactoryインタフェースを継承し、BeanFactoryのすべての機能を提供するApplicationContextインタフェースです.よりフレームワーク向けに動作するために、contextパッケージでは、階層化されたコンテキストクラスと継承関係のあるコンテキストクラスが使用されます.以下のものが含まれます.
1. MessageSourceは、国際化のサポートを提供します.
2. URLやファイルなどのリソースアクセス.
3. イベント転送.
4. 複数のプロファイルをロードします.
ApplicationContextにはBeanFactoryのすべての機能が含まれているので、ApplicationContextを優先的に使用することをお勧めします.BeanFactoryを使用することは、一部のメモリで非常に重要なアプリケーションでない限り考慮されません.
SpringがApplicationContextに提供する3つの実装は、次のとおりです.
ClassPathXmlApplicationContext
FileSystemXmlApplicationContext
XmlWebApplicationContext
ここでXmlWebApplicationContextはWebエンジニアリング専用にカスタマイズされています.使用例は次のとおりです.
1.
FileSystemXmlApplicationContext
eg1. ApplicationContext ctx = new FileSystemXmlApplicationContext("bean.xml"); //
eg2. String[] locations = {"bean1.xml", "bean2.xml", "bean3.xml"};
ApplicationContext ctx = new FileSystemXmlApplicationContext(locations );
//
eg3. ApplicationContext ctx =new FileSystemXmlApplicationContext("D:/project/bean.xml");
//
2.
ClassPathXmlApplicationContext
eg1. ApplicationContext ctx = new ClassPathXmlApplicationContext("bean.xml");
eg2. String[] locations = {"bean1.xml", "bean2.xml", "bean3.xml"};
ApplicationContext ctx = new ClassPathXmlApplication(locations);
// : FileSystemXmlApplicationContext //ClassPathXmlApplicationContext BeanFactory xml // 。
3.
XmlWebApplicationContext
eg1. ServletContext servletContext = request.getSession().getServletContext();
ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletContext);
本文は
http://zhaohe162.blog.163.com/blog/static/38216797201141551726177/