Code Bye

保持用户登录状态

最近刚接触java后台,比较菜,想问下用session判断用户登录的原理,查了下,貌似是这样的:
例如登录后本人在session中加入“user”属性,值为“login”
@RequestMapping(value = "/check", method = RequestMethod.GET)
    public String checkUser(HttpServletRequest request,
                            @RequestParam("UserName") String userName,
                            @RequestParam("PassWord") String passWord,
                            Model model){
        UserInfo userInfo = iUserService.selectByUserName(userName);
        model.addAttribute("userInfo", userInfo);
        if(MD5.getMd5(passWord).equals(userInfo.getPASSWORD())){
            request.getSession().setAttribute("user", "login");
            return "userInfo";
        }
        else {
            request.getSession().removeAttribute("user");
            return "login";
        }
    }

然后在其他jsp页面对应的controller中加入相似如下代码:

if(request.getSession().getAttribute("user").equals("login"))
{
//然后这里做相关操作,如查询等。
}

问一下是这个原理么?

解决方案

5

session 过期前 ping 一下

5

设置session过期时间(24h)

30

嗯嗯,是对的。
但是后面假如多个用户登录呢?
user 值应该设置为User对象。

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明保持用户登录状态