spring-spring容器中的bean
Posted zeromz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring-spring容器中的bean相关的知识,希望对你有一定的参考价值。
1、bean的基本定义和bean别名
2、容器中bean的作用域
singleton:单例模式,在整个spring IoC容器中,singleton作用域的bean将只生成一个实例。
prototype:每次通过容器的getBean()方法获取prototype作用域的bean时,都将产生一个新的bean实例。
request:对于一次HTTP请求,request作用域的bean将只生成一个实例,这意味着,在同一次HTTP请求内,程序每次请求该bean,得到的总是同一个实例。只有在Web应用中使用spring时,该作用域才真正的有效。
session:对于一次HTTP会话,sesion作用域的bean将只生成一个实例,这意味着,在同一次HTTP会话内,程序每次请求该bean,得到的总是同一个实例。只有在Web应用中使用spring时,该作用域才真正的有效。
global session:每个全局的HTTP Session对应一个bean实例。在典型的情况下,仅在使用portlet context的时候有效。只有在Web应用中使用spring时,该作用域才真正的有效。
比较常用的是singleton和prototype。对于singleton作用域的bean,每次请求该bean都将获得相同的实例。容器负责跟踪bean实例的状态,负责维护bean实例的生命周期行为;对于prototype作用域的bean,程序每次请求该id的bean,spring都会新建一个bean实例,然后返回给程序。这种情况下,spring容器仅仅使用new关键字创建bean实例,一旦创建成功,容器就不再跟踪实例,也不会维护bean实例的状态。
如果不指定bean的作用域,spring容器默认使用singleton作用域。
spring配置文件通过scope属性指定bean的作用域,该属性可以接受singleton、prototype、request、session、globalSession五个值。
3、request作用域
4、session作用域
以上是关于spring-spring容器中的bean的主要内容,如果未能解决你的问题,请参考以下文章