Spring系列8:bean的作用域】的更多相关文章

http://blog.csdn.net/yerenyuan_pku/article/details/52833477 Spring管理的bean的作用域有: singleton 在每个Spring IoC容器中,一个bean定义只有一个对象实例. 以Spring的三种实例化Bean的方式的案例为基础,我们举例说明.首先我们将Spring的配置文件——beans.xml的内容改为: <?xml version="1.0" encoding="UTF-8"?&g…
1.Bean的作用域种类 Spring中的bean的作用域分为四种:singleton.prototype.session.request,后两种很少使用,下面我们主要来学习前两种 2.singleton单例模式 在Spring种我们可以通过bean标签中的scope属性对Bean的作用域进行设置,singleton是默认值,容器初始时创建bean实例,在整个容器的生命周期内只创建一这一个bean,是单例的,在程序种无论获取多少次这个bean返回的都是同一个bean,并且在容器启动的时候就会创建…
Bean的作用域 Spring应用中,对象实例都是在Container中,负责创建.装配.配置和管理生命周期(new到finalize()) Spring Container分为两种: 1.BeanFactory:提供DI支持 2.ApplicationContext:基于BeanFactory构建,提供应用框架级别的服务 使用应用上下文: 1.AnnotationConfigApplicationContext:从一个或多个基于Java的配置类中加载Spring应用上下文 2.Annotati…
一.Bean的定义 <bean id="userDao" class="com.dev.spring.simple.MemoryUserDao"/> 这是一个最简单的 Bean 定义.它类似于调用了语句: MemoryUserDao userDao = new MemoryUserDao(). id属性必须是一个有效的 XML ID,这意味着它在整个 XML 文档中必须唯一.它是一个 Bean 的“终身代号”.同时你也可以用 name 属性为 Bean…
在配置文件中定义Bean时,用户不但可以配置Bean的属性值以及相互之间的依赖关系,还可以定义Bean的作用域.作用域将对Bean的生命周期和创建方式产生影响.在低版本的Spring中,仅有两个作用域singleton和prototype,在spring 2.0中,针对WebApplicationContext新添了3个新的作用域.下面列出了Spring 2.0支持的所有作用域类型. Bean的作用域类型 singleton :在Spring IOC容器中仅存在一个Bean实例,Bean以单实例…
profile 不同于maven的profile, spring的profile不需要重新打包, 同一个版本的包文件可以部署在不同环境的服务器上, 只需要激活对应的profile就可以切换到对应的环境. @Profile({"test","dev"}) Java Config 通过这个注解指定bean属于哪个或哪些profile. 参数value是一个profile的字符串数组. 此注解可以添加到类或方法上. XML Config 对应的节点是beans的属性pro…
创建应用对象之间协作关系的行为称为装配(wiring), 这也是DI的本质. Spring中装配Bean的方式 Spring提供了三种装配Bean的方式. 隐式的Bean发现机制和自动装配 Java Config Xml Config Spring可以任意选择三种方式其中的一种或多种组合. 但建议尽量使用自动装配方式以避免产生繁杂的xml配置文件及java代码, 其次是使用类型安全的Java Config, 如果都满足不了需求则最后再考虑xml config. 自动配置 借助于下面两个方面Spr…
singleton (默认方式) 在每个Spring IoC容器中一个bean定义只有一个对象实例.默认情况下会在容器启动时初始化bean,但我们可以指定bean节点的lazy-init=“true”来延迟初始化bean,这时候,只有第一次获取bean会才初始化bean.如:   1  <bean id="xxx" class="cn.itcast.OrderServiceBean" lazy-init="true"/> 如果想对所有…
1.默认情况下,spring通过@Autowared注入的bean是单例的bean,但有些情况是不满足的,例如:购物车,每个会话,或每个用户登录使用的购物车都是独立的 spring的定义的作用域: a:单例(Singleton) b:原型(prototype):每次注入的都会创建一个新的bean实例. c:会话(session):web应用中,每个会话创建一个bean. d:请求(Rquest):web应用中,为每个请求创建一个bean. 例子1: @Component @Scope(Confi…
.singleton 在每一个spring Ioc容器中一个bean定义只有一个对象实例.默认情况下会在容器启动时初始化bean,但我们可以指定bean节点的lazy-init = "true"来延迟初始化bean,这时候,只有第一次获取bean才会初始化bean.如下: <bean id = "xxx" class = "cn.itcast.OrderServiceBean" lazy-init = "ture"/&g…