cookie相关

/**
* 登录成功之后吧userId和pwd加密之后放入cookie

* @param cookiestr
*/
protected void setCookie(String cookieId, String cookiestr,String loginWeek) {
String uid = XXTea.encrypt(cookiestr, Const.ENCRYPT_KEY);
Cookie cookie = new Cookie(cookieId, uid);
cookie.setDomain(Const.DOMAIN);
cookie.setPath("/");
if (null != loginWeek && "on".equals(loginWeek)) {
cookie.setMaxAge(60 * 60 * 24 * 7);
} else {
cookie.setMaxAge(60 * 60 * 4);
}
response.addCookie(cookie);

}

获取cookie

public static AdminUserVO getUser(HttpServletRequest request,
String cookieId) {
try{
Cookie[] cookies = request.getCookies();
String adminUser = "";
if (cookies != null && cookies.length != 0) {
for (Cookie cookie : cookies) {
if (cookieId.equals(cookie.getName())) {
String temp = cookie.getValue();
adminUser = XXTea.decrypt(temp, Const.ENCRYPT_KEY);
}
}
}


if (null != adminUser && !"".equals(adminUser)) {
// IAdminUserService adminUserServiceImpl = (IAdminUserService)ImplClassUtil.getInstance().get("adminUserServiceImpl");
String[] adminUsers = adminUser.split(",");
// AdminUserQuery adminUserQuery = new AdminUserQuery();
// adminUserQuery.setPassword(adminUsers[1]);
// adminUserQuery.setAccount(adminUsers[0]);
// AdminUserVO adminUserVO = adminUserServiceImpl
// .getAdminUserVO(adminUserQuery);
AdminUserVO adminUserVO = (AdminUserVO)userMaps.get(adminUsers[0].trim());
if (null != adminUserVO) {
return adminUserVO;
}
}
}catch(Exception e){
e.printStackTrace();
}finally{
System.gc();
}
return null;
}



/**
* 用户退出

* @return
* @throws Exception
*/
public String logout() throws Exception {
try {
AdminUserQuery query = new AdminUserQuery();

AdminUserVO userVO = Utils.getUser(request, Const.COOKIEID);

query.setIs_Login(Const.IS_LOGIN_NO);
query.setUser_id(userVO.getUser_id());
adminUserServiceImpl.updateAdminUserVO(query);
// 清空cookie
Cookie cookie = new Cookie(Const.COOKIEID, "");
cookie.setDomain(Const.DOMAIN);
cookie.setPath("/");
cookie.setMaxAge(0);
response.addCookie(cookie);

Utils.userMaps.remove(userVO.getAccount());

// PageInfo pageInfo = new PageInfo(Integer.MAX_VALUE,Const.DEFAULT_PAGE_NO, Const.DEFAULT_MAX_RECORD);
// List<AdminUserVO> adminUserVOs =
// adminUserServiceImpl.getAdminUserVOByPage(adminUserQuery,
// pageInfo);
// adminUserQuery = null;
// if(adminUserVOs!=null&&adminUserVOs.size()>0){
// AdminUserVO userVO = Utils.getUser(request,);
// AdminUserQuery query = new AdminUserQuery();
//
// query.setIs_Login("1");
// query.setUser_id(adminUserVO.getUser_id());
// AdminUserVO userVO = Utils.getUser(request,query);
// }
Utils.insertLogInfo("用户退出", "帐号:"+userVO.getAccount(),userVO.getUser_id());
return SUCCESS;
} catch (Exception e) {
logger.error("用户退出:logout()",e);
e.printStackTrace();
}finally{
System.gc();
}
return ERROR;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值