spring(一)スプリングの核心容器
1901 ワード
スプリングの核心容器 BenFactory 簡単に言えば、BenFactoryはBeanを管理する工場であり、主に各種Beanを初期化し、それらのライフサイクルの方法を呼び出します.
BenFactoryのインスタンスを作成するには、Spring管理の詳細な構成情報が必要です.これらの情報はXMLファイル形式で管理されています.構成情報をロードする文法は以下の通りです.
2.Application Comptext
Apple ContectはBenFactoryのサブインターフェースであり、アプリケーションコンテキストとも呼ばれ、BenFactoryのすべての機能を含むだけでなく、国際化、資源訪問、イベント普及などの面でのサポートも追加されています.
Aplication Contectインターフェースの例を作成します.通常は2つの方法を採用します. Class PathXml Apple Comptextを通じて を作成します. FileSystemXmlAppleicationComptextを通じて を作成します.
ウェブサーバがAplication Contectコンテナを実例化する場合、通常はContect Loader Listenerに基づいて実現する方式を使用します.この方式はweb.xmlに下記のコードを追加するだけです.
同じ点:全部xmlプロファイルでビーンをロードします.
異なる点:Beanのある属性が注入されていない場合、BeanFactoryを使ってロードした後、初めてgetBean()メソッドを呼び出した時に異常を投げますが、Application Contextは初期化時に自己検査をするので、依存する属性が注入されているかどうかを確認するのに有利です.
BenFactoryのインスタンスを作成するには、Spring管理の詳細な構成情報が必要です.これらの情報はXMLファイル形式で管理されています.構成情報をロードする文法は以下の通りです.
BeanFactory beanFactory=new XmlBeanFactory(new fileSystemResource("F:/applicationContext.xml"))
2.Application Comptext
Apple ContectはBenFactoryのサブインターフェースであり、アプリケーションコンテキストとも呼ばれ、BenFactoryのすべての機能を含むだけでなく、国際化、資源訪問、イベント普及などの面でのサポートも追加されています.
Aplication Contectインターフェースの例を作成します.通常は2つの方法を採用します.
ApplicationContext applicationContext=new ClassPathXmlApplicationContext(String configLocation);
configLocationパラメータは、Springプロファイルの名前と位置を指定するために使用されます.ApplicationContext applicationContext=new FileSystemXmlApplicationContext(String configLocation);
Class PathXml Appleication Contectとは違って、springのプロファイルを読み込むとき、FileSystemXmlAppliation Contectはクラスパスからプロファイルを読み込まなくなり、設定ファイルの位置をパラメータで指定します.例えば、F:/workspace/appration Context.xmlウェブサーバがAplication Contectコンテナを実例化する場合、通常はContect Loader Listenerに基づいて実現する方式を使用します.この方式はweb.xmlに下記のコードを追加するだけです.
contextConfigLocation
classpath:spring/applicationContext.xml
org.springframework.web.context.ContextLoaderListener
両者の違いは以下の通りです同じ点:全部xmlプロファイルでビーンをロードします.
異なる点:Beanのある属性が注入されていない場合、BeanFactoryを使ってロードした後、初めてgetBean()メソッドを呼び出した時に異常を投げますが、Application Contextは初期化時に自己検査をするので、依存する属性が注入されているかどうかを確認するのに有利です.