@SessionAttribute
如果您需要访问全局管理的预先存在的会话属性(即,在控制器之外,例如,由过滤器管理),并且这些属性可能存在也可能不存在,您可以在方法参数上使用 @SessionAttribute
注解,如下面的示例所示
-
Java
-
Kotlin
@GetMapping("/")
public String handle(@SessionAttribute User user) { (1)
// ...
}
1 | 使用 @SessionAttribute 。 |
@GetMapping("/")
fun handle(@SessionAttribute user: User): String { (1)
// ...
}
1 | 使用 @SessionAttribute 。 |
对于需要添加或删除会话属性的用例,请考虑将 WebSession
注入控制器方法。
对于在控制器工作流程中将模型属性临时存储在会话中的用例,请考虑使用 SessionAttributes
,如 @SessionAttributes
中所述。