spring container
10528 ワード
bean:管理対象オブジェクト、スプリングフレームによって管理されるオブジェクト
ファイルの作成
beanオブジェクトの作成
nameまたはid、nameは特殊文字であってもよい.
通常idがもっと使われます.
TVUser
スプリング内のプロファイルを使用してオブジェクトをポップアップおよび使用する方法について説明します. beanオブジェクトの作成時に特定のメソッド を実行するように設定することができる.
初期化方法
終了メソッド
は、lazy-init(遅延初期化) を設定することが一般的ではない.
lazy-initを設定する前に
設定
設定すると、コンソールには何も入力されません.
scope
プロトタイプ設定後、3つのオブジェクトが作成されたことを確認できます.
ファイルの作成
beanオブジェクトの作成
nameまたはid、nameは特殊文字であってもよい.
通常idがもっと使われます.
TVUser
package polymorphism;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.GenericXmlApplicationContext;
public class TVUser {
static BeanFactory factory = new BeanFactory();
public static void main(String[] args) {
// xml 파일을 읽어서 객체를 만들어라
AbstractApplicationContext factory
= new GenericXmlApplicationContext("applicationContext.xml");
TV tv = (TV)factory.getBean("tv");
tv.powerOn();
tv.powerOff();
tv.volumeUp();
tv.volumeDown();
// Spring container를 종료한다
factory.close();
}
}
スプリング内のプロファイルを使用してオブジェクトをポップアップおよび使用する方法について説明します.
初期化方法
終了メソッド
lazy-initを設定する前に
設定
設定すると、コンソールには何も入力されません.
package polymorphism;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.GenericXmlApplicationContext;
public class TVUser {
static BeanFactory factory = new BeanFactory();
public static void main(String[] args) {
/*
// 객체가 각각 생긴다(총 3개)
TV tv0 = new SamsungTV();
TV tv1 = new SamsungTV();
TV tv2 = new SamsungTV();
*/
/*
// 객체가 1개 생긴다
TV tv0 = new SamsungTV();
TV tv1 = tv0;
TV tv2 = tv1;
*/
AbstractApplicationContext factory =
new GenericXmlApplicationContext("applicationContext.xml");
/* Spring은 bean을 생성할 때 기본적으로 Singleton Pattern을 사용한다
* 즉, 1개만 생성해서 다음부터는 같은 bean을 리턴한다
*/
TV tv0 = (TV)factory.getBean("tv");
TV tv1 = (TV)factory.getBean("tv");
TV tv2 = (TV)factory.getBean("tv");
System.out.println(tv0);
System.out.println(tv1);
System.out.println(tv2);
factory.close(); // Spring 컨테이너를 종료한다
}
}
プロトタイプ設定後、3つのオブジェクトが作成されたことを確認できます.
Reference
この問題について(spring container), 我々は、より多くの情報をここで見つけました https://velog.io/@jinkyung/spring-containerテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol