我是Spring MVC的新手,我正在尝试在我的控制器类中获取会话信息
现在我正在使用
HttpSession objHttpSession = request.getSession(true);
如果我想获得会话创建时间和我正在使用的会话ID
objHttpSession.getCreationTime(); objHttpSession.getId();
我想知道是否有任何Spring MVC特定方式来获取会话详细信息?
提前致谢
use*_*887 36
当我需要访问会话详细信息时,我通常在Spring MVC控制器方法中声明类型为HttpSession的参数.
例如:
@RequestMapping("/myrequest")
public void handleMyRequest(HttpSession session, ...) {
...
}
Run Code Online (Sandbox Code Playgroud)
我认为这是最简单的方法,但不知道它是否符合您的需求.
Pau*_*nis 21
您可以像这样在Spring MVC中获取会话:
ServletRequestAttributes attr = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
HttpSession session = attr.getRequest().getSession();
Run Code Online (Sandbox Code Playgroud)
该currentRequestAttributes方法将RequestAttributes当前绑定返回到存在当前请求的线程,并从该请求中获取会话.当您需要在非spring类中获取会话时,这非常有用.否则你可以使用:
@RequestMapping(...)
public void myMethod(HttpSession session) {
}
Run Code Online (Sandbox Code Playgroud)
Spring会将HttpSession实例注入到控制器的方法中.
| 归档时间: |
|
| 查看次数: |
43049 次 |
| 最近记录: |