温馨提示×

spring中bean的作用域是什么

小亿
97
2023-08-23 20:28:34
栏目: 编程语言

在Spring中,Bean的作用域指的是一个Bean实例在应用程序中的生命周期和可见性范围。Spring框架提供了以下几种常用的Bean作用域:

  1. Singleton:默认的作用域,每个Spring容器只会创建一个Bean实例,并在整个容器的生命周期内重用该实例。所有对该Bean的请求都会返回同一个实例。

  2. Prototype:每次对该Bean的请求都会创建一个新的实例。每个Bean请求都会返回一个新的Bean实例。

  3. Request:每个HTTP请求都会创建一个新的Bean实例,该实例仅在当前HTTP请求内部可见。在同一个请求中多次调用Bean将会得到同一个实例。

  4. Session:每个用户会话(即每个浏览器会话)都会创建一个新的Bean实例,该实例仅在当前会话内部可见。在同一个会话中多次调用Bean将会得到同一个实例。

  5. Global Session:类似于Session作用域,但只适用于Portlet应用程序。在Portlet容器中,每个用户会话(即每个用户登录)都会创建一个新的Bean实例。

  6. Application:每个ServletContext(即每个Web应用程序)都会创建一个新的Bean实例,该实例在整个Web应用程序范围内可见。在同一个Web应用程序中多次调用Bean将会得到同一个实例。

根据不同的业务需求,可以选择合适的作用域来管理Bean实例的创建和生命周期。

0