春天的请求和会话范围有什么区别?

gre*_*orn 8 session spring dependency-injection request autowired

在请求范围中,bean被定义为HTTP请求,而在会话范围中,它被限定为HTTP会话.所以对于一个例子,

如果bean范围是请求,并且用户在其用户会话中对网页发出多个请求,则在每个请求上都将创建一个新bean.

如果将作用域定义为bean的会话,则如果用户多次请求网页,则在每个请求中都会返回相同的bean.

如果这种理解是正确的,请告诉我?

Ved*_*ash 10

会话范围——当范围是会话时,formbean(表单数据)的值将在整个会话期间可用。它不会被销毁,直到会话超时或会话被销毁。

请求范围——当范围是请求时,formbean(表单数据)的值将可用于当前请求。它将根据同一用户/不同用户的每个请求进行刷新。

因为http是无状态协议


so-*_*ude 9

你的理解是正确的.不过我想补充一点

如果将作用域定义为bean的会话,则如果用户多次请求网页,则在每个请求中都会返回相同的bean.

我会改变它,如果范围被定义为bean的会话,如果用户多次请求一个网页,那么只要请求在同一个请求中,就会返回相同的bean.用户会话,由能够维护会话的客户端构成(curl除非传递cookie /会话标识符头,否则不能指望维护usersession).