Spring中对象的Scope:
1.在Spring中配置的bean,默认情况下是单例的
2.在web应用中,持久层和业务层的对象一般都是单例的
scope属性时用来限定bean的生命范围,也就是在什么范围内拿到的bean是相同的。
在配置中的应用方式是这样的:
其中scope默认是singleton,除此之外,还有request和session
下面分别介绍一下:
singleton:默认值,这整个应用里面,拿到的是同一个引用(bean)
prototype:原型模式,每次拿到这个对象,拿到的都是这个对象原对象的一份拷贝,每拿一次,就创建一个新的对象
对于scope属性设置为prototype的bean,ApplicationContext在启动的时候不会初始化这些类
request:在一次请求(HttpRequest)中创建一个
session:在一个会话(HttpSession)中创建一个
对于request和session一般不会使用,必须是在有web环境的Spring中使用。