样例代码:
@Configuration
public class SpringTest {
@Test
public void test() throws IOException {
AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext();
ac.register(SpringTest.class);
ac.refresh();
MyBean bean = ac.getBean(MyBean.class);
System.out.println(bean);
System.out.println(this);
System.in.read();
}
@Bean
public MyBean myBean() {
System.out.println("Create MyBean");
System.out.println(this);
System.out.println();
return new MyBean();
}
@Bean
public MyBean2 myBean2() {
System.out.println("Create MyBean2");
System.out.println(myBean()); // Dead loop?
System.out.println(this);
System.out.println();
return new MyBean2();
}
}
执行结果:
Cre