bean的作用域
1.单例模式(Spring默认机制)
singleton建议用于单线程
容器创建的对象的个数全局唯一。
不管调用多少次,只用全局这一个。
scope:singleton
<bean id="user" class="com.my.User" p:name="张三" p:age="34" scope="singleton"/>
测试
@Test
public void p(){
ApplicationContext pathXmlApplicationContext = new ClassPathXmlApplicationContext("beans.xml");
User user = (User) pathXmlApplicationContext.getBean("user");
User user1 = pathXmlApplicationContext.getBean("user", User.class);
System.out.println(user==user1);
}
结果:true
2.原型模式
prototype建议用于多线程
容器创建的对象有多个。
调用一次,创建一次。
scope:prototype
<bean id="user" class="com.my.User" p:name="张三" p:age="34" scope="prototype"/>
测试:false