0%

spring bean的作用域

spring bean的作用域

spring容器中bean有五种作用域

  • singleton单例:这种 bean 范围是默认的,这种范围确保不管接受到多少个请求,每个容器中只有一个 bean 的实例,单例的模式由 bean factory 自身来维护
  • prototype原型:原型范围与单例范围相反,为每一个 bean 请求提供一个实例
  • request请求:在请求 bean 范围内会每一个来自客户端的网络请求创建一个实例,在请求完成以后,bean 会失效并被垃圾回收器回收,仅在web的Spring WebApplicationContext环境中有效
  • session会话:与请求范围类似,确保每个 session 中有一个 bean 的实例,在 session 过期后,bean 会随之失效,仅在web的Spring WebApplicationContext环境中有效
  • application:该bean的生命周期与ServletContext的生命周期一致,仅在web的Spring WebApplicationContext环境中有效