cookie的应用

实现代码如下所示。
...
  response.setContentType("text/html;charset=gbk");
//获取用户名
String userName = request.getParameter("username");
//获取用户密码
String password = request.getParameter("password");

//验证用户是否合法
if ("accp".equals(userName) && "accp".equals(password)) {
//如果合法,把用户名和密码保存在客户端Cookie中

//获取客户选择的Cookie保存时间
String cookieDate = request.getParameter("cookieDate");
int date = 0;

if (cookieDate != null && cookieDate != "")
date = Integer.parseInt(cookieDate);

//创建用户名Cookie对象
Cookie cookieName = new Cookie("accpLoginName", userName);
//设置Cookie保存时间
cookieName.setMaxAge(date);
//添加到客户端
response.addCookie(cookieName);

//创建用户密码Cookie对象
Cookie cookiePass = new Cookie("accpLoginPass", password);
//设置保存Cookie时间
cookiePass.setMaxAge(date);
//添加到客户端
response.addCookie(cookiePass);

response.sendRedirect("success.jsp");
} else {
response.sendRedirect("fail.jsp");
}
...


二、用户再次登录时操作

  服务器首先读取客户端Cookie信息,如果存在用户名和密码数据,则直接登录,否则显示登录页面。
实现代码如下所示。

response.setContentType("text/html;charset=gbk");
//用户名和密码是否存在以及合法的判断参数
boolean bool=false;
//获取客户端Cookie数组
Cookie[] cookies = request.getCookies();

//判断客户端是否存在Cookie对象
if (cookies != null) {
//预定义保存用户名和密码的变量

String userName = "";
String password = "";
//遍历Cookie数组

for (int i = 0; i < cookies.length; i++) {
//取得每一个Cookie对象
Cookie cookie = cookies[i];
//判断Cookie的名称是否等于"accpLoginName"
if ("accpLoginName".equals(cookie.getName())) {
userName = cookie.getValue();
}

//判断Cookie的名称是否等于"accpLoginPass"
if ("accpLoginPass".equals(cookie.getName())) {
password = cookie.getValue();
}
}
//判断用户名和密码是否合法
if ("accp".equals(userName) && "accp".equals(password))
bool=true;
}

//判断对客户端的Cookie的操作是否成功,成功则显示登录成功后的页面,
//否则,重定向到登录页面
if(bool)
response.sendRedirect("success.jsp");
else
response.sendRedirect("login.jsp");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值