使用cookie实现登录时账号自动填充

本案例中包含三个jsp文件:Login.jsp,check.jsp,A.jsp.

Login.jsp中设置登录界面,其中html代码如下:         

UserId:">
Password:

//这里有些变量会在后面给出

思路:

用户输入账号密码后,跳转到check.jsp页面,通过

String uname = request.getParameter("name");
String pwd = request.getParameter("pwd");

得到账号密码,然后通过如下代码把Name和pwd都放到cookie里面,通过response接收

Cookie cookie = new Cookie("uname",uname);
Cookie cookie2 = new Cookie("pwd",pwd);
response.addCookie(cookie);
response.addCookie(cookie2);

最后重定向跳转到新的界面A.jsp.

response.sendRedirect("A.jsp");//A.jsp中内容随意设置即可

在这之后,cookie被带到了客户端,这个时候cookie已经在客户端保存好了,客户端可以利用request.getCookie()得到cookie,并进一步获取其中的元素。

回到Login.jsp,其中需要的java代码是

<%!
String name = null;
%>
<%
Cookie[] cookies = request.getCookies();
for(Cookie cookie:cookies)//for each 循环遍历cookies中的所有cookie
{
if(cookie.getName().equals("name"))//如果cookie中的Name是uname的话,取他的value值赋给这里的name
{
    name = cookie.getValue();
}
}    
%>

完整的Login.jsp代码:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>




2re


<%!
String name = null;
%>
<%
Cookie[] cookies = request.getCookies();
for(Cookie cookie:cookies)
{
if(cookie.getName().equals("name"))
{
    name = cookie.getValue();
}
}    
%>
UserId:">
Password:

check.jsp代码:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>




Insert title here


<%
String name = request.getParameter("name");
String pwd = request.getParameter("pwd");
Cookie cookie = new Cookie("name",name);
Cookie cookie2 = new Cookie("pwd",pwd);
response.addCookie(cookie);
response.addCookie(cookie2);
response.sendRedirect("A.jsp");
%>

 

                      

你可能感兴趣的:(使用cookie实现登录时账号自动填充)