Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Spring MVC 3中获取会话信息_Java_Spring Mvc - Fatal编程技术网

Java 如何在Spring MVC 3中获取会话信息

Java 如何在Spring MVC 3中获取会话信息,java,spring-mvc,Java,Spring Mvc,我是SpringMVC的新手,我正在尝试在我的控制器类中获取会话信息 现在我正在使用 HttpSession objHttpSession=request.getSession(true) 如果我想获得我正在使用的会话创建时间和会话Id objHttpSession.getCreationTime(); objHttpSession.getId() 我想知道是否有任何特定于SpringMVC的方法来获取会话细节 提前感谢当我需要访问会话详细信息时,我通常在我的Spring MVC控制器方法中声明

我是SpringMVC的新手,我正在尝试在我的控制器类中获取会话信息

现在我正在使用

HttpSession objHttpSession=request.getSession(true)

如果我想获得我正在使用的会话创建时间和会话Id

objHttpSession.getCreationTime(); objHttpSession.getId()

我想知道是否有任何特定于SpringMVC的方法来获取会话细节


提前感谢

当我需要访问会话详细信息时,我通常在我的Spring MVC控制器方法中声明HttpSession类型的参数

例如:

@RequestMapping("/myrequest")
public void handleMyRequest(HttpSession session, ...) {
   ...
}

我认为这是最简单的方法,但不知道它是否适合您的需要。

您可以在Spring MVC中获得如下会话:

ServletRequestAttributes attr = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
HttpSession session = attr.getRequest().getSession();
currentRequestAttributes
方法返回当前绑定到存在当前请求的线程的
RequestAttributes
,从该请求可以获得会话。当您需要在非spring类中获得会话时,这非常有用。否则,您只需使用:

@RequestMapping(...)
public void myMethod(HttpSession session) {   
}
Spring将把
HttpSession
实例注入控制器的方法中