您的位置:首页 > 其它

用户登录中Cookie的简单应用

2015-09-25 11:42 375 查看
总共分为三个界面,第一个界面:登录界面

<%@ page language="java" contentType="text/html; charset=utf-8" import="java.net.*"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<h1> 用户登录界面</h1>
<%
request.setCharacterEncoding("utf-8");
String  username="";
String password="";
Cookie[] cookie= request.getCookies();
if(cookie!=null&&cookie.length>0){

for(Cookie c:cookie){

if(c.getName().equals("username")){

username=URLDecoder.decode(c.getValue(),"utf-8");
}
if(c.getName().equals("password")){

password=URLDecoder.decode(c.getValue(), "utf-8");
}
}
}

%>
<form action="dologin.jsp"  method="post">
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="username" value="<%=username%>"/></td>
</tr>

<tr>
<td>密码:</td>
<td><input type="password" name="password" value="<%=password%>"/></td>
</tr>

<tr>
<td colspan="2"> <input type="checkbox" name="isuseCookie" checked="checked"
/> 十天内免密码登录</td>

</tr>

<tr>
<td colspan="2" align="center"><input type="submit" value="登录"/></td>
</tr>

</table>
</form>

</body>
</html>
第二个界面:用户请求处理界面

<%@page import="java.net.URLEncoder"%>
<%@ page language="java" contentType="text/html; charset=utf-8" import="java.net.*"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<h1>用户登录成功</h1>

<br>
<%
request.setCharacterEncoding("utf-8");

String[]  isuseCookie=request.getParameterValues("isuseCookie");
if(isuseCookie!=null&&isuseCookie.length>0){
//保存用户信息到Cookie
//特别说明:防止中文乱码,URLEncodeer.encode(String   "字符集");

String username=URLEncoder.encode(request.getParameter("username"),"utf-8");

String password=URLEncoder.encode(request.getParameter("password"),"utf-8");

Cookie usernameCookie= new  Cookie("username",username);
Cookie  passwordCookie= new  Cookie("password",password);
//设置Cookie保存的时间,单位秒
usernameCookie.setMaxAge(864000);
passwordCookie.setMaxAge(864000);
//添加到Cookie
response.addCookie(usernameCookie);

response.addCookie(passwordCookie);
}
else{
//需要清空Cookie

Cookie[] cookie =request.getCookies();
if(cookie!=null&&cookie.length>0){

for(Cookie c:cookie){
if(c.getName().equals("username")||c.getName().equals("password")){
c.setMaxAge(0);//设置Cookie失效
response.addCookie(c);//重新保存Cookie

}

}

}

}

%>

<br>
<br>
<a href="users.jsp">用户信息</a>

</body>
</html>


第三个界面:用户界面

<%@page import="java.net.URLDecoder"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<h1>用户信息输出</h1>
<%
String  username="";
String password="";
Cookie[] cookie= request.getCookies();
if(cookie!=null&&cookie.length>0){

for(Cookie c:cookie){

if(c.getName().equals("username")){

username= URLDecoder.decode(c.getValue(),"utf-8");
}
if(c.getName().equals("password")){

password=URLDecoder.decode(c.getValue(), "utf-8");
}
}
}

%>
用户名为:<%= username %>
密码:<%= password %>

</body>
</html>


可以记住用户十天的登录信息,十天内面密码登录
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: