@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 中所述。