在spring HandlerInterceptorAdapter内获取session id和在controller内获取session id,两个session id不一致,
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
System.out.println("注入" + request.getSession().getId());
}
@RequestMapping(value = "/login.html", method = {RequestMethod.GET, RequestMethod.HEAD})
public String login(HttpServletRequest request, HttpServletResponse response, HttpSession session) {
System.out.println("登录1>" + request.getSession().getId());
}
上面两段代码获取到的session id竟然不是同一样,
使用jetty8.1.2运行。
<context:component-scan base-package="com.test" use-default-filters="true">
<context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
<context:include-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/>
</context:component-scan>
<mvc:annotation-driven/>
这个是dispatcher-servlet.xml配置。
哪位遇到过?
Spring
试打印一下request
System.out.println("注入request" + request);
System.out.println("登录request>" + request);