SingletonBean
package main.com.lee.c_scope;
/**
* 单例bean
*
* @author Lynch
*
*/
public class SingletonBean {
public SingletonBean() {
System.out.println("单例bean构造了。。。");
}
}
PrototypeBean
package main.com.lee.c_scope;
/**
* 多例bean
*
* @author Lynch
*
*/
public class PrototypeBean {
public PrototypeBean() {
System.out.println("多例bean构造了...");
}
}
applicationContext.xml
<!-- Bean的作用域 -->
<bean id="singletonBean" class="main.com.lee.c_scope.SingletonBean" scope="singleton" />
<bean id="prototypeBean" class="main.com.lee.c_scope.PrototypeBean" scope="prototype" />
Test
package main.com.lee.c_scope;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
/**
* Bean的作用域小测
*
* @author Lynch
*
*/
public class BeanScopeTest {
@Test
public void demo1() {
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
// 单例bean
SingletonBean singletonBean1 = (SingletonBean) applicationContext.getBean("singletonBean");
SingletonBean singletonBean2 = (SingletonBean) applicationContext.getBean("singletonBean");
System.out.println(singletonBean1);
System.out.println(singletonBean2);
// 多例bean
PrototypeBean prototypeBean1 = (PrototypeBean) applicationContext.getBean("prototypeBean");
PrototypeBean prototypeBean2 = (PrototypeBean) applicationContext.getBean("prototypeBean");
System.out.println(prototypeBean1);
System.out.println(prototypeBean2);
}
}
out
1
2
3
4
5
6
7
|
单例bean构造了。。。
main.com.lee.c_scope.SingletonBean@170bea5
main.com.lee.c_scope.SingletonBean@170bea5
多例bean构造了...
多例bean构造了...
main.com.lee.c_scope.PrototypeBean@f47396
main.com.lee.c_scope.PrototypeBean@d0af9b
|