注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 CCNA教材推荐
 帮助

Spring2的Bean的作用域、装配类型、依赖检查


2008-07-02 15:45:03
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://lavasoft.blog.51cto.com/62575/85179
Spring2的Bean的作用域和装配类型
 
----Spring2升级学习笔记
 
一、作用域
 
1、singleton
在Spring IoC容器中仅存在一个Bean实例,Bean以单例的方式存在。
 
2、prototype
每次从容器调用Bean时,都返回一个新的实例,即每次调用getBean()时,相当于执行new XxxBean()的操作。
 
3、request
每次HTTP请求都会创建一个新的Bean实例,该作用域仅适用于WebApplicationContext环境。
 
4、session
同一个HTTP Session共享一个Bean,不同HTTP Session使用不同的Bean。该作用域仅适用于WebApplicationContext环境。
 
5、globalSession
同一个全局Session共享一个Bean,一般用于Portlet应用环境。该作用域仅适用于WebApplicationContext环境。
 
 
二、装配类型
 
1、no
不使用自动装配。必须通过ref元素指定依赖,这是默认设置。由于显式指定协作者可以使配置更灵活、更清晰,因此对于较大的部署配置,推荐采用该设置。而且在某种程度上,它也是系统架构的一种文档形式。
 
2、byName
不使用自动装配。必须通过ref元素指定依赖,这是默认设置。由于显式指定协作者可以使配置更灵活、更清晰,因此对于较大的部署配置,推荐采用该设置。而且在某种程度上,它也是系统架构的一种文档形式。
 
3、byType
不使用自动装配。必须通过ref元素指定依赖,这是默认设置。由于显式指定协作者可以使配置更灵活、更清晰,因此对于较大的部署配置,推荐采用该设置。而且在某种程度上,它也是系统架构的一种文档形式。
 
4、constructor
与byType的方式类似,不同之处在于它应用于构造器参数。如果在容器中没有找到与构造器参数类型一致的bean,那么将会抛出异常。
 
5、autodetect
与byType的方式类似,不同之处在于它应用于构造器参数。如果在容器中没有找到与构造器参数类型一致的bean,那么将会抛出异常。
 
三、依赖检查
 
1、none
没有依赖检查,如果bean的属性没有值的话可以不用设置。
 
2、simple
对于原始类型及集合(除协作者外的一切东西)执行依赖检查。
 
3、object
仅对协作者执行依赖检查。
 
4、all
对协作者,原始类型及集合执行依赖检查。
 

本文出自 “熔 岩” 博客,请务必保留此出处http://lavasoft.blog.51cto.com/62575/85179





    文章评论
 
 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: