spring-beanの作用域

1603 ワード

一、何がbeanの役割エリアですか?
 
一般的には、私たちはスプリング環境の下でビーンを配置します.このビーンは一例です.
つまり、ioc容器はこのbeanノードだけでbeanオブジェクトを作成します.私たちはgetBeanメソッドを呼び出すたびに同じbeanに戻ります.
car類の無参画構造関数を作成して、一言を印刷します.「生まれました.」
	public car() {
		super();
		System.out.println("    ");
	}
ファイルコードの設定
>
main関数テスト
ApplicationContext ac=	new 	ClassPathXmlApplicationContext("ce/beans.xml"); //       “    ”
	car car1 =	(car) ac.getBean("car");
	car car2 =  (car) ac.getBean("car");
	System.out.println(car1 == car2);//true
car 1とcar 2は同じ対象であることを説明します.beanのスコープはデフォルトでは一例です.
設定ファイルの中でbeanノードscopeはこのスコープを設定できます.デフォルトはsingletonです.つまり一例です
作用域をプロトタイプに設定できます.
そして結果を見ています
ApplicationContext ac=	new 	ClassPathXmlApplicationContext("ce/beans.xml"); 
	car car1 =	(car) ac.getBean("car");//       “    ”
	car car2 =  (car) ac.getBean("car");//       “    ”
	System.out.println(car1 == car2);//false
プロトタイプを配置すると、毎回異なるオブジェクトを作成します.
beanのscope属性を使用して、beanの作用領域を設定します.
singleton:標準値、容器初期時にbeanインスタンスを作成し、容器全体のライフサイクル内にこのbeanだけを作成します.
プロトタイプ:プロトタイプのコンテナ初期化時にビーンのインスタンスを作成せず、要求毎に新しいビーンのインスタンスを作成して返します.
request:プレオブジェクトのrequest
セッション:事前対象のセッション