首页 > 编程语言 > 详细

SpringBean作用域

时间:2019-04-27 14:05:51      阅读:138      评论:0      收藏:0      [点我收藏+]

1、Bean作用域

spring中为bean定义了5种作用域,分别为singleton(单例)、prototype(原型)、requestsessionglobal session。默认情况下为singleton`(单例)模式

  • singleton:单例模式:IOC容器中只会存在一个bean实例,无论多少bean引用它,始终指向相同的对象
  • prototype:原型模式:IOC容器可以同时存在多个实例,当程序去获取bean时可创建出一个新的实例
  • request:在一次Http请求中,容器会返回该Bean的同一实例。而对不同的Http请求则会产生新的Bean,而且该bean仅在当前Http Request内有效。
  • session:在一次Http Session中,容器会返回该Bean的同一实例。而对不同的Session请求则会创建新的实例,该bean实例仅在当前Session内有效。
  • global Session:在一个全局的Http Session中,容器会返回该Bean的同一个实例,仅在使用portlet context时有效。

    2、测试

    由于时初学spring,这里只做单利模式和原型模式的测试

1、singleton单例模式

配置

<bean id="user" class="priv.wfq.spring.model.User" scope="singleton"></bean>  

结果
两次获取User对象的实例,得到的是同一个实例

技术分享图片

2、prototype原型模式

配置

<bean id="user" class="priv.wfq.spring.model.User" scope="prototype"></bean>  

结果
两次获取User对象的实例,得到的是不同实例,说明IOC容器新创建了一个User实例。

技术分享图片

SpringBean作用域

原文:https://www.cnblogs.com/hamawep789/p/10778364.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!