Spring bean Scope
2016-05-30 00:00
363 查看
摘要: 分析Spring 中 bean scope
Spring 定义了多种作用域,可以基于这些作用域创见bean,包括:
单例(Singleton) : 整个应用中,只创建一个bean 实例【默认】
原型(Prototype): 每次注入或者通过spring 上下文获取的时候,会创建一个新的bean 实例
会话(Session) : 在web 应用中,为每一个会话创见一个bean 实例
请求(Request):在Web 应用中,每个请求创见一个bean 实例
在配置Scope session 时会出现:
web.xml 配置监听器
注解配置
之后便可以实现会话层的bean
参考资料:http://stackoverflow.com/questions/21286675/scope-session-is-not-active-for-the-current-thread-illegalstateexception-no
Spring 定义了多种作用域,可以基于这些作用域创见bean,包括:
单例(Singleton) : 整个应用中,只创建一个bean 实例【默认】
原型(Prototype): 每次注入或者通过spring 上下文获取的时候,会创建一个新的bean 实例
会话(Session) : 在web 应用中,为每一个会话创见一个bean 实例
请求(Request):在Web 应用中,每个请求创见一个bean 实例
在配置Scope session 时会出现:
Scope 'session' is not active for the current thread; IllegalStateException: No thread-bound request found
解决办法:web.xml 配置监听器
<listener> <listener-class> org.springframework.web.context.request.RequestContextListener </listener-class> </listener>
注解配置
@Controller @Scope(value="session", proxyMode=ScopedProxyMode.TARGET_CLASS) public class ReportBuilder implements Serializable { ... ... }
之后便可以实现会话层的bean
参考资料:http://stackoverflow.com/questions/21286675/scope-session-is-not-active-for-the-current-thread-illegalstateexception-no
相关文章推荐
- @@IDENTITY与SCOPE_IDENTITY()
- Spring Bean基本管理实例详解
- Spring中多配置文件及引用其他bean的方式
- AngularJS中监视Scope变量以及外部调用Scope方法
- Laravel 5框架学习之日期,Mutator 和 Scope
- 深入解析AngularJS框架中$scope的作用与生命周期
- AngularJS中如何使用$parse或$eval在运行时对Scope变量赋值
- 深入探究AngularJS框架中Scope对象的超级教程
- 解析Java中如何获取Spring中配置的bean
- Java中BEAN与EJB的区别浅析
- 深入解析Java的Spring框架中bean的依赖注入
- Java中Spring获取bean方法小结
- 详解Spring Boot 使用Java代码创建Bean并注册到Spring中
- 详解Java的Spring框架中bean的定义以及生命周期
- 详解Java的Spring框架中bean的注入集合
- Java的Spring框架中bean的继承与内部bean的注入
- Java类获取Spring中bean的5种方式
- Scope in JavaScript
- 各种概念POJO、JAVABEAN、DAO、DTO、PO、VO、BO、SSH、EJB
- 让Spring Controller 的方法基本数据类型参数支持Bean Validation