ApplicationContext ctx = new ClassPathXmlApplicationContext(
"com/springinaction/springidol/spring-idol.xml");
Performer performer = (Performer) ctx.getBean("duke");
performer.perform();
上記では、Bean がインスタンス化されるのはいつですか。ApplicationContext が作成されたときですか、それとも getBean() が呼び出されたときですか。
ベストアンサー1
Bean がシングルトンであり、遅延初期化用に構成されていないと仮定すると、コンテキストの起動時に作成されます。getBean()
単にそれを取り出します。
Lazy-init Bean は最初に参照されたときにのみ初期化されますが、これはデフォルトではありません。スコープ付き Bean (例: prototype-scoped) も、最初に参照されたときにのみ作成されます。