Spring中的作用域探讨(session作用域的用法?)

刚刚看完Spring 官方文档的作用域这节,对作用域有了大概的认知。可以理解为bean的生命周期,
即一个bean在什么时候创建,什么时候销毁。

作用域的类型

spring的作用域有6种:

  • singleton:单例,在一个容器中只会有一个实例
  • prototype:原型,每次请求或每个依赖都会创建一个单独的实例
  • request: 每个HTTP 请求都会创建一个实例,相互独立,互不影响
  • session: 每个会话都会创建一个实例
  • application: 应用全局的实例,和singleton相似了,但是singleton是每个容器中只存在一个,application是servelet
  • websocket:应该是在每个socket连接共享一个实例吧

此外 还可以自定义作用域:Spring官方文档:自定义作用域

引发疑问:session作用域对象在一次回话中只会创建一个实例,状态在整个回话中都是共享的,那是不是可以用来存放当前登录的用户信息,在用户登录网站时调用getBean(“loginUser”),将用户信息设置进去,后面的请求中要获取用户信息只需要再次调用getBean(“loginUser”)就能取出当前用户的信息。有这样做的吗?可行吗?

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值