zoukankan      html  css  js  c++  java
  • JavaWeb_Cookie显示最近浏览的商品

    books.jsp

    <%--
      Created by IntelliJ IDEA.
      User: dell
      Date: 2019/7/10
      Time: 9:22
      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>
    <h4>BOOKS page</h4>
    <a href="book.jsp?book=JavaWeb">Java Web</a>
    <br>
    <a href="book.jsp?book=Java">Java</a>
    <br>
    <a href="book.jsp?book=Oracle">Oracle</a>
    <br>
    <a href="book.jsp?book=Ajax">Ajax</a>
    <br>
    <a href="book.jsp?book=JavaScript">JavaScript</a>
    <br>
    <a href="book.jsp?book=Android">Android</a>
    <br>
    <a href="book.jsp?book=Jbpm"></a>
    <br>
    <a href="book.jsp?book=Struts">Struts</a><br>
    <a href="book.jsp?book=Spring">Spring</a><br>
    <br><br>
    <%
        //显示最近浏览的五本书
        //获取所有的Cookie
        Cookie [] cookies = request.getCookies();
    
        //从中筛选出Book的Cookie。如果cookieName为YHS_BOOK_开头的既符合条件
        //显示cookieValue
        if (cookies!=null && cookies.length>0){
            for (Cookie c:cookies
                 ) {
                String cookieName = c.getName();
                if (cookieName.startsWith("YHS_BOOK_")){
                    out.print(c.getValue());
                    out.print("<br>");
                }
            }
        }
    %>
    </body>
    </html>
    

      

    book.jsp

    <%@ page import="java.util.List" %>
    <%@ page import="java.net.CookieHandler" %>
    <%@ page import="java.util.ArrayList" %><%--
      Created by IntelliJ IDEA.
      User: dell
      Date: 2019/7/10
      Time: 9:22
      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>
        <h4>Book Detail Page</h4>
    Book:<%= request.getParameter("book")
    %>
        <br><br>
        <a href="books.jsp">Return</a>
        <%
    
            String book = request.getParameter("book");
            /**
             * 把书的信息以Cookie方式传回浏览器,删除一个Cookie
             * 1.确定被删除的Cookie
             * 前提:YHS_BOOK_开头的Cookie数量大于或等于5
             */
            Cookie [] cookies = request.getCookies();
    
             //保存所有的YHS_BOOK_开头的Cookie
            List<Cookie> bookCookies = new ArrayList<Cookie>();
            //用来保存和books.jsp传入的book匹配的那个Cookie
            Cookie tempCookie = null;
             if (cookies.length>0&&cookies!=null){
                 for (Cookie cookie : cookies){
                     String cookieName = cookie.getName();
                     if (cookieName.startsWith("YHS_BOOK_")){
                        bookCookies.add(cookie);
                        if (cookie.getValue().equals(book)){
                            tempCookie = cookie;
                        }
                     }
                 }
             }
    
             /**
             *
             *
             *
             * ①且若从books.jsp页面出入的book不再YHS_BOOK_的Cookie中则删除较早的那个Cookie
             * (YHS_BOOK_ 数组的第一个Cookie)
             */
                if (bookCookies.size()>=5&&tempCookie ==null){
                    tempCookie = bookCookies.get(0);
    
                }
             /**
             * ②若在其中,则删除该Cookie
             */
             if (tempCookie!=null){
                 tempCookie.setMaxAge(0);
                 response.addCookie(tempCookie);
             }
             /*
             * 2.把从books.jsp传入的book作为一个Cookie返回
             */
    
             Cookie cookie = new Cookie("YHS_BOOK_"+book,book);
             response.addCookie(cookie);
        %>
    </body>
    </html>
    

      

    效果图:

     

  • 相关阅读:
    imperva_waf导入ssl证书
    博科光纤交换机初始化配置
    xss测试代码
    生成树注意事项
    [转载]Basics of the Unix Philosophy
    [转载]GSview注册码
    [转载]tar命令详解
    [转载]WinEdt 6 注册 试用期30天永不过期
    [转载+修改]计数排序
    [转载]C++ 关于声明,定义,类的定义,头文件作用,防止头文件在同一个编译单元重复引用,不具名空间
  • 原文地址:https://www.cnblogs.com/yangHS/p/11162187.html
Copyright © 2011-2022 走看看