Spring Bean范围 示例
Spring 该目的是通过默认单身创建的对象
设定Bean范围。由Bean美元Scope财产
Scope取值范围:
Singleton:单例
proptotype:非单例
Request:创建该Bean,并调用request.setAttribute(“beanId”,beanObj);
Session:创建该Bean,并调用request.getSession().setAttribute(“beanId”,beanObj);
globalSession:全局Session分布式server
測试代码
public class InitBeanApp {
@Test
public void show() {
ApplicationContext ac = new ClassPathXmlApplicationContext(
"applicatioContext.xml");
Bean1 bean1 = (Bean1) ac.getBean("bean2");
Bean1 bean2 = (Bean1) ac.getBean("bean2");
Bean1 bean3 = (Bean1) ac.getBean("bean3");
Bean1 bean4 = (Bean1) ac.getBean("bean3");
System.out.println(bean1);
System.out.println(bean2);
System.out.println(bean3);
System.out.println(bean4);
}
}
配置代码
<!-- bean的作用域 -->
<!-- scope:用于设置bean的作用域 默认值:singleton 单例-->
<bean id="bean2" class="com.hao947.bean.Bean1" scope="singleton">
</bean>
<!-- bean的作用域 -->
<!-- scope:对于设置bean范围 默认:prototype -->
<bean id="bean3" class="com.hao947.bean.Bean1" scope="prototype">
</bean>
Spring Bean范围 示例的更多相关文章
- 非spring组件servlet、filter、interceptor中注入spring bean
问题:在filter和interceptor中经常需要调用Spring的bean,filter也是配置在web.xml中的,请问一下这样调用的话,filter中调用Spring的某个bean,这个be ...
- Spring Bean 生命周期2
在spring中,从BeanFactory或ApplicationContext取得的实例为Singleton,也就是预设为每一个Bean的别名只能维持一个实例,而不是每次都产生一个新的对象使用Sin ...
- 【转】CXF+Spring+Eclipse简明示例
多系统(异构系统)进行交互时,一种良好的方式便是调用Web Service,本示例基于Apache组织的CXF,为了方便起见特将服务端和客户端写在同一个工程下,实际项目中是不可能的,但是客户端却依赖于 ...
- (转)Spring Bean Scope 有状态的Bean 无状态的Bean
有状态会话bean :每个用户有自己特有的一个实例,在用户的生存期内,bean保持了用户的信息,即“有状态”:一旦用户灭亡(调用结束或实例结束),bean的生命期也告结束.即每个用户最初都会得到一 ...
- spring bean中子元素lookup-method和replaced-method
lookup-method 示例: 步骤一:定义一个Car类 package org.hope.spring.bean.lookup; public class Car { private Strin ...
- Spring Bean初始化之后执行指定方法
转: Spring Bean初始化之后执行指定方法 2017年07月31日 15:59:33 vircens 阅读数:24807 Spring Bean初始化之后执行指定方法 在运用Spring进 ...
- Spring常用配置示例
Spring 是一款Java平台的开源框架,是为解决企业级应用程序开发的复杂性而创建的,通过良好的分层架构让开发人员能够专注于业务逻辑的开发. Spring框架是一个分层架构,由不同的模块组成,构成s ...
- Spring点滴九:Spring bean的延迟初始化
Spring bean延迟初始化: 官网API: By default, ApplicationContext implementations eagerly create and configure ...
- 如何在静态方法或非Spring Bean中注入Spring Bean
在项目中有时需要根据需要在自己new一个对象,或者在某些util方法或属性中获取Spring Bean对象,从而完成某些工作,但是由于自己new的对象和util方法并不是受Spring所 ...
随机推荐
- 【转载】openCV轮廓操作
声明:非原创,转载自互联网,有问题联系博主 1.轮廓的提取 从图片中将目标提取出来,常常用到的是提取目标的轮廓. OpenCV里提取目标轮廓的函数是findContours(), 它的输入图像是一幅二 ...
- 16-UIKit(AutoLayout、Animation)
目录: 一.AutoLayout自动布局 二.动画(Animation) 回到顶部 一.AutoLayout自动布局 1.什么是AutoLayout 从ios6开始引入的新技术,是新版的自动布局技术 ...
- 巧用MySQL InnoDB引擎锁机制解决死锁问题(转)
该文会通过一个实际例子中的死锁问题的解决过程,进一步解释innodb的行锁机制 最近,在项目开发过程中,碰到了数据库死锁问题,在解决问题的过程中,笔者对MySQL InnoDB引擎锁机制的理解逐步加深 ...
- cmake手册详解----转
参考链接:http://www.cnblogs.com/coderfenghc/tag/cmake/
- 如何查询一个库文件属于哪个rpm包
1.如果这个库文件已经存在 使用rpm命令: # rpm -qf /file/path (绝对路径) 例如: # rpm -qf /lib/libm.so.6 glibc-2.12-1.47.el ...
- Oracle undo 镜像数据探究
Oracle undo 镜像数据探究 今天是2013-08-18,隔别一周的 ...
- 微信jsSDK开发
(学习类)2015年最新微信公众平台开发 微信JSSDK开发分享功能 链接地址:http://blog.163.com/sdolove@126/blog/static/1146378852015132 ...
- Writing a ServiceMain Function(使用RegisterServiceCtrlHandler函数)
The following global definitions are used in this sample. C++ #define SVCNAME TEXT("SvcName&q ...
- eclipse导入myeclipse的web项目没法识别问题解决方法
1.进入项目目录,找到.project文件,打开. 2.找到<natures>...</natures>代码段. 3.在第2步的代码段中加入如下标签内容并保存: <nat ...
- 原始的js代码和jquery对比
Even a task as simple as this can be complicated without jQuery at our disposal. In plain JavaScript ...