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范围 示例的更多相关文章

  1. 非spring组件servlet、filter、interceptor中注入spring bean

    问题:在filter和interceptor中经常需要调用Spring的bean,filter也是配置在web.xml中的,请问一下这样调用的话,filter中调用Spring的某个bean,这个be ...

  2. Spring Bean 生命周期2

    在spring中,从BeanFactory或ApplicationContext取得的实例为Singleton,也就是预设为每一个Bean的别名只能维持一个实例,而不是每次都产生一个新的对象使用Sin ...

  3. 【转】CXF+Spring+Eclipse简明示例

    多系统(异构系统)进行交互时,一种良好的方式便是调用Web Service,本示例基于Apache组织的CXF,为了方便起见特将服务端和客户端写在同一个工程下,实际项目中是不可能的,但是客户端却依赖于 ...

  4. (转)Spring Bean Scope 有状态的Bean 无状态的Bean

    有状态会话bean   :每个用户有自己特有的一个实例,在用户的生存期内,bean保持了用户的信息,即“有状态”:一旦用户灭亡(调用结束或实例结束),bean的生命期也告结束.即每个用户最初都会得到一 ...

  5. spring bean中子元素lookup-method和replaced-method

    lookup-method 示例: 步骤一:定义一个Car类 package org.hope.spring.bean.lookup; public class Car { private Strin ...

  6. Spring Bean初始化之后执行指定方法

    转: Spring Bean初始化之后执行指定方法 2017年07月31日 15:59:33 vircens 阅读数:24807   Spring Bean初始化之后执行指定方法 在运用Spring进 ...

  7. Spring常用配置示例

    Spring 是一款Java平台的开源框架,是为解决企业级应用程序开发的复杂性而创建的,通过良好的分层架构让开发人员能够专注于业务逻辑的开发. Spring框架是一个分层架构,由不同的模块组成,构成s ...

  8. Spring点滴九:Spring bean的延迟初始化

    Spring bean延迟初始化: 官网API: By default, ApplicationContext implementations eagerly create and configure ...

  9. 如何在静态方法或非Spring Bean中注入Spring Bean

           在项目中有时需要根据需要在自己new一个对象,或者在某些util方法或属性中获取Spring Bean对象,从而完成某些工作,但是由于自己new的对象和util方法并不是受Spring所 ...

随机推荐

  1. 【转载】openCV轮廓操作

    声明:非原创,转载自互联网,有问题联系博主 1.轮廓的提取 从图片中将目标提取出来,常常用到的是提取目标的轮廓. OpenCV里提取目标轮廓的函数是findContours(), 它的输入图像是一幅二 ...

  2. 16-UIKit(AutoLayout、Animation)

    目录: 一.AutoLayout自动布局 二.动画(Animation) 回到顶部 一.AutoLayout自动布局 1.什么是AutoLayout 从ios6开始引入的新技术,是新版的自动布局技术 ...

  3. 巧用MySQL InnoDB引擎锁机制解决死锁问题(转)

    该文会通过一个实际例子中的死锁问题的解决过程,进一步解释innodb的行锁机制 最近,在项目开发过程中,碰到了数据库死锁问题,在解决问题的过程中,笔者对MySQL InnoDB引擎锁机制的理解逐步加深 ...

  4. cmake手册详解----转

    参考链接:http://www.cnblogs.com/coderfenghc/tag/cmake/

  5. 如何查询一个库文件属于哪个rpm包

    1.如果这个库文件已经存在 使用rpm命令: # rpm -qf  /file/path  (绝对路径) 例如: # rpm -qf /lib/libm.so.6 glibc-2.12-1.47.el ...

  6. Oracle undo 镜像数据探究

                                                                 Oracle undo 镜像数据探究  今天是2013-08-18,隔别一周的 ...

  7. 微信jsSDK开发

    (学习类)2015年最新微信公众平台开发 微信JSSDK开发分享功能 链接地址:http://blog.163.com/sdolove@126/blog/static/1146378852015132 ...

  8. Writing a ServiceMain Function(使用RegisterServiceCtrlHandler函数)

    The following global definitions are used in this sample. C++   #define SVCNAME TEXT("SvcName&q ...

  9. eclipse导入myeclipse的web项目没法识别问题解决方法

    1.进入项目目录,找到.project文件,打开. 2.找到<natures>...</natures>代码段. 3.在第2步的代码段中加入如下标签内容并保存: <nat ...

  10. 原始的js代码和jquery对比

    Even a task as simple as this can be complicated without jQuery at our disposal. In plain JavaScript ...