zoukankan      html  css  js  c++  java
  • JavaWeb--会话与状态管理1--cookie 基础与自动登录

     连接用户多次请求的

    会话ID(SessionID):浏览器对其发出的每个请求消息都进行标识
    在 Servlet 规范中,常用以下两种机制完成会话跟踪
      Cookie
      Session

    Cookie机制:
      cookie机制采用的是在客户端保持 HTTP 状态信息的方案
      Cookie是在浏览器访问WEB服务器的某个资源时,由WEB服务器在HTTP响应消息头中附带传送给浏览器的一个小文本文件。
      一旦WEB浏览器保存了某个Cookie,那么它在以后每次访问该WEB服务器时,都会在HTTP请求头中将这个Cookie回传给WEB服务器。

    利用Cookie自动登录

      

    login.jsp

    <%--
      Created by IntelliJ IDEA.
      User: Skye
      Date: 2017/12/12
      Time: 9:21
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Title</title>
    </head>
    <body>
    <form action="index.jsp" method="post">
        loginName: <input type="text" name="loginName"/>
        <input type="submit" name="Submit"/>
    </form>
    </body>
    </html>
    

    index.jsp

    <%--
      Created by IntelliJ IDEA.
      User: Skye
      Date: 2017/12/12
      Time: 9:13
      To change this template use File | Settings | File Templates.
    --%>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
      <head>
        <title>$Title$</title>
      </head>
      <body>
      <%
        String name = request.getParameter("loginName");
        if(name != null && !name.trim().equals("")){
            Cookie cookie = new Cookie("name", name);
            cookie.setMaxAge(30);
            response.addCookie(cookie);
        }else{
            Cookie[] cookies = request.getCookies();
            if(cookies != null && cookies.length != 0){
                for(Cookie cookie: cookies){
                    if("name".equals(cookie.getName())){
                        String val = cookie.getValue();
                        name = val;
                    }
                }
            }
        }
    
        if(name != null && !name.trim().equals("")){
            out.print("hello" + name);
        }else{
            response.sendRedirect("login.jsp");
        }
    
      %>
      </body>
    </html>
    

      

  • 相关阅读:
    Python资源大全中文版
    Python数据结构之字符串
    一头扎进Node系列
    MySQL的安装配置与卸载
    编程日常单词
    ping请求找不到主机 请检查该名称
    Node项目日志管理
    Node版本控制利器
    JavaScript 数据去重的常用几种方法
    一头扎进Node(一)
  • 原文地址:https://www.cnblogs.com/SkyeAngel/p/7988334.html
Copyright © 2011-2022 走看看