Cookie实现记住用户名案例

来源:互联网 发布:大庆八一农垦大学淘宝 编辑:程序博客网 时间:2024/05/21 11:07

LoginUIServlet.java文件:

package com.neu;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class LoginUIServlet extends HttpServlet {    public void doGet(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {        response.setContentType("text/html;charset=UTF-8");        PrintWriter out = response.getWriter();        String username = "";        String checked = "";        //得到指定的cookie        Cookie cs[] = request.getCookies();        for(int i=0;cs!=null&&i<cs.length;i++){            if("loginInfo".equals(cs[i].getName())){                username = cs[i].getValue();                checked="checked='checked'";                break;            }        }        out.write("<form action='"+request.getContextPath()+"/servlet/LoginServlet' method='post'>");        out.write("用户名:<input type='text' name='username' value='"+username+"'/><br/>");        out.write("密码:<input type='password' name='password' value=''/><br/>");        out.write("记住用户名:<input type='checkbox' name='remember' "+checked+"/><br/>");        out.write("<input type='submit' value='登录'/>");        out.write("</form>");    }    public void doPost(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {        doGet(request, response);    }}

LoginServlet.java文件:

package com.neu;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class LoginServlet extends HttpServlet {    public void doGet(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {        response.setContentType("text/html;charset=UTF-8");        PrintWriter out = response.getWriter();        //验证用户名和密码是否正确:此处输什么都正确        String username = request.getParameter("username");        String password = request.getParameter("password");        String remember = request.getParameter("remember");//没有选中就是null        Cookie c = new Cookie("loginInfo", username);        c.setPath(request.getContextPath());        if(remember==null){            //没有选中:删cookie            c.setMaxAge(0);        }else{            //用户记住用户名:存cookie            c.setMaxAge(Integer.MAX_VALUE);        }        response.addCookie(c);        out.write("登录成功");    }    public void doPost(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {        doGet(request, response);    }}

运行:http://localhost:8080/Cookie/servlet/LoginServlet
结果:登陆成功

0 0
原创粉丝点击