java写cookie到客户端

来源:互联网 发布:淘宝直播底薪一般多少 编辑:程序博客网 时间:2024/05/17 08:58
/**
* 保存Cookie到客户端
* 传递进来的user对象中封装了在登陆时填写的用户名与密码
* @param user
* @param response
*/
public static void saveCookie(AdminUser user, HttpServletResponse response) throws Exception {
// cookie的有效期至(到哪一天)
long validTime = System.currentTimeMillis() + (cookieMaxAge * 1000);
// MD5加密用户详细信息(其实就是把当前用户加密一下,后面判断是否是同一个用户)
String cookieValueWithMd5 = MD5.md5crypt(user.getUsername()+ ":"+ user.getPassword() + ":" + validTime + ":" + Const.WEBKEY);
// 将要被保存的完整的Cookie值
String cookieValue = user.getUsername() + ":" + validTime +":"+cookieValueWithMd5;
// 再一次对Cookie的值进行BASE64编码
//String cookieValueBase64 = new String(base64.encodeAsString(cookieValue.getBytes("UTF-8")));
String cookieValueBase64 = new String(Base64.encodeBase64(cookieValue.getBytes("UTF-8")));
// 开始保存Cookie(cookie是网站名和值)
Cookie cookie = new Cookie(Const.COOKIEDOMAINNAME, cookieValueBase64);
// 存一年(这个值应该大于或等于validTime)
cookie.setMaxAge(60 * 60 * 24 * 365 * 1);
// cookie有效路径是网站根目录
cookie.setPath("/");
// 向客户端写入
response.addCookie(cookie);
}
原创粉丝点击