Cookie的使用

html:

DOCTYPE html>
<html>
    <head>
    <meta charset="UTF-8" />
    <title>登录界面title>    
        <script type="text/javascript" src="script/login.js">script>
        <link href="css/login.css" type="text/css" rel="stylesheet">
    head>
    <body>
    <div id="page">
        <div id="page_head">
            <div id="logo">
                <img src="rsc\login_logo.png"/>
            div>
            div>
        <div id="page_body">
            <div id="login">
                <div id="loginTitle">
                    <b>账号登录b>
                div>
                <form action="TestServlet"  id="loginForm">
                    <div id="tip">请填写用户名div>
                    <div class="textitem_count">
                        <input style="width:320px;height:30px" name="input_user" type="text"  placeholder="用户名">
                    div>
                    <div class="textitem_pwd">
                        <input style="width:320px;height:30px" name="input_password"  type="password"  placeholder="密码">
                    div>
                    <div style="position:absolute;left:30px;top:220px;width:320px">
                        <sqan style="color:red;float:left;">学生选择@stu.swpu.edu.cnsqan>
                        <a href="#" style="float:right;">忘记密码a>
                    div>    
                    <div style="position: absolute; left:30px; top:260px;width: 320px"> 
                      <input onclick="fnLogin()" style="float:right;background:url(rsc/login_btn.jpg);" class="btn" type="submit" value="登 录" />   
                     div> 
                 form>
          div>
         div>
        <div id="page_foot">西南石油大学div>
    div>
body>
html>

HttpServlet:

package swpu.com;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
    String sql = null;
    Connection conn = null;
    Statement stmt = null;
    ResultSet rs = null;
    boolean isLoing=false;
    /**
     * @see HttpServlet#HttpServlet(g)
     */
    public TestServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        response.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=UTF-8");
        
        String userName = request.getParameter("input_user");
        String userPsw  = request.getParameter("input_password");
        // 判读以前是否登录且未过期
        Cookie[] cookies = request.getCookies();
        String value = "";
        if(cookies!=null)
        {
            for(Cookie cookie:cookies)
            {
            //  已登录且记住密码 跳转到首页
                if(cookie.getName().equals("remmberme"))
                {
                    response.sendRedirect("/shouye.html");
                    return;
                }
            }
        }
         //连接数据库检测用户名和密码
        try {
            //连接数据库
            Class.forName("com.mysql.jdbc.Driver");
            DriverManager.registerDriver(new com.mysql.jdbc.Driver());
            conn=DriverManager.getConnection("jdbc:mysql://localhost/workdb?user=root&password=root&serverTimezone=UTC");
            stmt=conn.createStatement();
            sql="select userPWD from login where userID='"+userName+"'";
            rs=stmt.executeQuery(sql);
            
            if(rs.next()) {
                //获取输入用户名的密码进行检验,若与输入的一致则isLogin置为true,反之置false
                String pw=rs.getString("userPWD");
                if (pw.equals(userPsw)) {
                    isLoing=true;
                }else {
                    isLoing=false;
                }
            }else {
                //若未查询到用户的存在也置为false
                isLoing=false;
            }
            
        } catch (Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }finally {
            try {
                if(rs!=null)
                    rs.close();
                if(stmt!=null)
                    stmt.close();
                if(conn!=null)
                    conn.close();
            } catch (Exception e2) {
                // TODO: handle exception
                e2.printStackTrace();
            }
        }
        
        if(isLoing){
        response.getWriter().write("登陆成功");
        response.getWriter().write("br>");
        response.getWriter().write("用户名:" + userName);
        response.getWriter().write("br>");
        response.getWriter().write("密码:" + userPsw);
        //登录成功后创建一个新的cookie
        Cookie cookie = new Cookie("remmberme","1");
        cookie.setMaxAge(30*34*60*60);
        // 记住密码
        response.addCookie(cookie);
        response.sendRedirect("/shouye.html");
        return;
        }
        else{
        response.getWriter().write("登录失败!");
        }
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        
    }
}

界面

你可能感兴趣的:(Cookie的使用)