• servlet Cookie 的使用(六)


    1.cookie介绍

      Cookie,指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)。(可以叫做浏览器缓存)

    2.cookie案例

      servlet 源码

    package com.learn;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.Cookie;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.io.PrintWriter;
    
    /**
     * 
     */
    public class CookieServlet extends HttpServlet {
    
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            //cookie引用
            Cookie cookie = null;
            //设置返回类型为文本类型
            resp.setContentType("text/plain");
            //获取输出对象
            PrintWriter out = resp.getWriter();
    
            //从请求参数中获取cookies
            Cookie[]  cookies = req.getCookies();
            if(cookies != null){
                for (int i = 0; i < cookies.length ; i++) {
                    out.println("name:"+cookies[i].getName());
                    out.println("value:"+cookies[i].getValue());
                    //如果cookie值为user,则赋值给cookie
                    if(cookies[i].getName().equals("user")){
                        cookie = cookies[i];
                    }
                }
    
            } else {
                out.print("no cookie");
            }
    
            if(cookie == null){
                cookie = new Cookie("user","tom");
                //设置cookie最大值为60分钟
                cookie.setMaxAge(60*60);
                resp.addCookie(cookie);
            } else if(cookie.getValue().equals("tom")){
                cookie.setValue("jack");
                resp.addCookie(cookie);
            } else if(cookie.getValue().equals("jack")){
                cookie.setMaxAge(0);
                resp.addCookie(cookie);
            }
    
           out.close();
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            super.doPost(req, resp);
        }
    }

    web,xml 配置

      <servlet>
            <servlet-name>cookie</servlet-name>
            <servlet-class>com.learn.CookieServlet</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>cookie</servlet-name>
            <url-pattern>/cookie</url-pattern>
        </servlet-mapping>

    返回结果:

    继续访问一次,返回结果

  • 相关阅读:
    数学建模课程常用英语词汇(专业术语)
    MATLAB简易画图
    MATLAB与C语言对比实例:随机数生成
    C语言 投票系统:给定候选人,从键盘输入候选人的名字,统计票数,并输出最终获胜者
    C语言 一个数学问题:求s=(a^m)!+(b^n)!
    C语言 矩阵的转置及矩阵的乘法
    iOS_数据存取(二)
    iOS_数据存取(一)
    iOS_SDWebImage框架分析
    iOS_AFNetWorking框架分析
  • 原文地址:https://www.cnblogs.com/wwyx-xi/p/7594355.html
Copyright © 2020-2023  润新知