以前經常使用SSH框架,對spring MVC只是有所了解,但是當真正使用springMVC做開發的時候卻發現,一個簡單的獲取session的問題竟然糾結了許久:
花點時間記錄一下,以便日后重用:
后台獲取session:
@RequestMapping("/usrlogin")
public ModelAndView usrlogin(@RequestParam String usrid,
@RequestParam String passwd) {
HttpSession session = getSession();
User user = new User();
user = userMapper.getUserByUsridAndPasswd(usrid, passwd);
if (null != user) {
session.setAttribute("user", user.getUser_id());
// User user1=(User)session.getAttribute("user");
// System.out.println(user1.getUser_name());
return new ModelAndView("main");
} else {
return new ModelAndView("error");
}
}
public static HttpSession getSession() {
HttpSession session = null;
try {
session = getRequest().getSession();
} catch (Exception e) {}
return session;
}
public static HttpServletRequest getRequest() {
ServletRequestAttributes attrs =(ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
return attrs.getRequest();
}
前台jsp取值:
<% HttpSession s = request.getSession(); %> <span><%=s.getAttribute("user")%></span>
