第一次做自动登录。利用博客记录下来以后好好看看。
首先要想明白怎么才能自动登录。登录系统无非就是要验证用户名、密码、角色属性等等,验证成功后就可以登录。
那么我们将用户所登录的信息储存在cookie里,下次用户访问网站就可以直接从cookie里取得信息并验证不就可以了么?
那么如何创建cookie和取得cookie呢?
创建cookie:
1:Cookie cookie = new Cookie(name, value);
创建cookie需要两个值,就好比map的key ,value 。那我们在创建的时候直接把你登录需要的信息直接储存在value里就可以了。
至于这个value里究竟怎么拼写,就得看你自己了。
2:cookie.setMaxAge(int time);
这是cookie的生命周期。time为0 cookie就结束了生命周期。cookie.setMaxAge(0)
3:cookie.setPath("/");
网址的根目录
4:response.addCookie(cookie);
这时候就完成了cookie的创建
取得cookie:
Cookie cookies[] = request.getCookies();
接着用循环遍历你的cookie数组,然后取得所存入的name,这时候你就可以把所登录的信息取出来。
for (int i = 0; i < cookies.length; i++) {
if (name.equals(cookies[i].getName())) {
cookieMap.put(cookies[i].getName(), cookies[i].getValue());
}
}
在这里,我同样用了一个map,储存了信息。
对于cookie的创建,我是判断cookie里是否有我已经创建的name
if (getCookieValue(request).isEmpty()) {
saveCookie(name,value, response);
}
剩下的登陆处理就用自己的逻辑完成了。