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 ></bean>  

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

SpringBean作用域

2、prototype原型模式

配置

<bean ></bean>  

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

SpringBean作用域

相关文章:

  • 2021-06-12
  • 2021-11-28
  • 2021-05-18
  • 2022-12-23
  • 2021-04-05
  • 2021-12-12
  • 2021-04-15
猜你喜欢
  • 2021-04-19
  • 2021-08-26
  • 2023-02-05
  • 2021-06-12
  • 2022-12-23
  • 2021-09-20
相关资源
相似解决方案