我正在研究Spring MVC,但有以下疑问:
阅读文档,我知道这将bean定义的范围限定为HTTP会话。仅在可感知网络的Spring ApplicationContext上下文中有效。而且,每个用户会话一次创建一个新实例。
但是什么时候才使用呢?出于什么目的?你能举一个实际的例子吗?
我知道在Spring中,bean的默认范围是 单例, 但是在Web上下文中,bean的范围如何?
Ans 1)会话范围与HttpSession范围非常相似。基于会话作用域范围实例化的Bean通过HTTP会话存在。与请求范围类似,它仅适用于可感知Web的Spring应用程序上下文。
/** * Annotation-based configuration of session scope */ @Component @Scope("session") public class ShopCart { }
然后
@Inject private ShopCart cart;
答案2)默认情况下,“ Singleton”到处都是。