Scope是定义Spring如何创建bean的实例的。
在创建bean的时候可以带上scope属性,scope有下面几种类型。
Singleton
这也是Spring默认的scope,表示Spring容器只创建一个bean的实例,Spring在创建第一次后会缓存起来,之后不再创建,就是设计模式中的单例模式。
Prototype
代表线程每次调用这个bean都新创建一个实例。
Request
表示每个request作用域内的请求只创建一个实例。
Session
表示每个session作用域内的请求只创建一个实例。
GlobalSession
这个只在porlet的web应用程序中才有意义,它映射到porlet的global范围的session,如果普通的web应用使用了这个scope,容器会把它作为普通的session作用域的scope创建。
在创建bean的时候如何指定呢?
xml方式
<bean id="student" class="Student" scope="prototype" />
注解方式
@Component
@Scope("prototype")
public class Student{
}
是不是很简单,更多干货请关注Java技术栈微信公众号。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。