-
singleton(默认):
- 在Spring容器中,每个bean定义对应一个实例,默认情况下是singleton,即每个容器中只有一个bean的实例。
- 单例模式由Spring容器来管理和维护,保证在容器中只有一个实例,并且在第一次被请求时进行创建。
-
prototype:
- 每次从容器中获取该bean时,都会创建一个新的实例。
- 每个请求都会得到一个新的bean实例,适用于需要频繁创建新对象的情况。
-
request:
- 每次HTTP请求都会创建一个新的bean实例,该实例仅在当前请求的范围内有效。
- 在web应用中,每个HTTP请求都有一个对应的bean实例,请求结束后,bean会被销毁。
-
session:
- 每个HTTP会话(session)都会创建一个新的bean实例,该实例在整个会话期间有效。
- 在web应用中,每个用户会话都有一个对应的bean实例,当用户会话结束后,bean会被销毁。
-
global-session:
- 在Portlet环境中,每个全局会话都会创建一个新的bean实例,该实例在整个全局会话期间有效。
- 与session作用域类似,但是适用于Portlet应用的全局会话。