前端通过JS把用户信息传到Controller,然后在Controller里将信息放入HttpSession中
@ResponseBody
@RequestMapping(value = "/loginIn", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
public String loginIn(HttpServletRequest request, HttpSession httpSession) {
String loginuser = request.getParameter("username");
String pwd = request.getParameter("password");
logger.info("loginuser:" + loginuser + ",pwd:" + pwd);
JSONObject jsonObject = userFacade.loginIn(loginuser, pwd);
// 将用户保存到session内
if ("0".equals(jsonObject.getString("ecode"))) {//判断不用管
httpSession.setAttribute("username", loginuser);
httpSession.setAttribute("password", pwd);
}
return FastJsonConvert.convertObjectToJSON(jsonObject);
}
再在前端js中调用Controller第二个方法,获取session内容
JS中代码:
var username = "";
$.ajax({
"url" : "getUserSession",
"method" : "POST",
"cache" : false,
"async" : false,
}).success(function(data){
if(data.username != null){
username = data.username;
}
})
Controller获取代码:(return JSON对象)
@ResponseBody
@RequestMapping(value = "/getUserSession", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
public String getUserSession(HttpServletRequest request, HttpSession httpSession) {
JSONObject jsonObject = new JSONObject();
if(httpSession!=null){
jsonObject.put("username", httpSession.getAttribute("username"));
jsonObject.put("password", httpSession.getAttribute("password"));
}
return FastJsonConvert.convertObjectToJSON(jsonObject);
}
这样就可把user信息保存到session中,并返回到前端