@SessionAttribute
如果您需要訪問全域性管理(例如,透過過濾器,而非控制器)的、可能存在或不存在的現有會話屬性,可以在方法引數上使用 @SessionAttribute
註解,如下例所示:
-
Java
-
Kotlin
@RequestMapping("/")
public String handle(@SessionAttribute User user) { (1)
// ...
}
1 | 使用 @SessionAttribute 註解。 |
@RequestMapping("/")
fun handle(@SessionAttribute user: User): String { (1)
// ...
}
1 | 使用 @SessionAttribute 註解。====== |
對於需要新增或移除會話屬性的使用場景,請考慮將 org.springframework.web.context.request.WebRequest
或 jakarta.servlet.http.HttpSession
注入到控制器方法中。
對於在控制器工作流中將模型屬性臨時儲存到會話的用例,請考慮使用 @SessionAttributes
,具體參見 @SessionAttributes
。