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