当前位置:   article > 正文

cookie的基本操作(创建,在页面显示)_cookie显示在页面

cookie显示在页面

1 首先新建一个web项目
2根据前面文章配置好Tomcat
在这里插入图片描述
3 启动服务器 我用的是Google浏览器 ,服务器启动以后按着f12打开如图所示页面可以看到关于本机的一些cookie信息
在这里插入图片描述
4设置cookie的一些信息(如果是第一次设置那么会遇到extend HTTPServlet没有的情况,那么就是没有导包可以按照这个方法进行导包 https://blog.csdn.net/xiaozaizi666/article/details/87805564?ops_request_misc=%25257B%252522request%25255Fid%252522%25253A%252522161088419216780255266226%252522%25252C%252522scm%252522%25253A%25252220140713.130102334.pc%25255Fall.%252522%25257D&request_id=161088419216780255266226&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-1-87805564.first_rank_v2_pc_rank_v29&utm_term=idea%E9%87%8C%E6%B2%A1%E6%9C%89httpServlet%E6%96%B9%E6%B3%95
在这里插入图片描述

package com.ly.web;

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;
import java.io.IOException;
//使用注解 使启动页面走index.jsp
@WebServlet (value = "/TestCookie")
public class cookieServlet extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //1创建cookie
        Cookie cookie=new Cookie("c1","cookieTest");
        // 2响应给客户端
        resp.addCookie(cookie);
        //3跳转页面
        resp.sendRedirect("show.jsp");
    }
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
<%--
  Created by IntelliJ IDEA.
  User: ly
  Date: 2021/1/17
  Time: 19:28
  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>
<h1>默认界面</h1>
<a href="/TestCookie">TestCookie</a>
</body>
</html>

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
<%--
  Created by IntelliJ IDEA.
  User: ly
  Date: 2021/1/17
  Time: 20:00
  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>
<h1>这是跳转的页面</h1>
</body>
</html>

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

启动服务器以后的界面,可以看到请求和响应的cookie已经设置好了
在这里插入图片描述
6在页面展示cookie信息
在这里插入图片描述
在show页面添加如下代码就行,如果遇到了out.print报错问题那么就是没有导包按着前面的步骤导入Tomcat.api包就解决了这个问题

<%
Cookie []cookies= request.getCookies();
if (cookies!=null){
    for (int i = 0; i < cookies.length; i++) {
        out.print(cookies[i].getName()+"  "+cookies[i].getValue()+" -->");
    }
}
%>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

7删除cookie
通过设置同名Cookie的最大存活时间为0,删除Cookie是指使浏览器不再保存Cookie,使Cookie立即失效

举例:使name为username的Cookie立即失效 //1.创建一个name为username的Cookie Cookie
cookie = new Cookie(“username”, “aaa”); //2.设置Cookie的有效时间为0
cookie.setMaxAge(0);//删除cookie的关键 //3.将cookie发送给浏览器,来替换同名Cookie
response.addCookie(cookie);

Cookie的有效时间
Cookie发送给浏览器以后,浏览器并不会永久保存,也就是到了一定的时间以后浏览器会自动销毁Cookie。
Cookie的默认有效时间为一次会话(一次打开关闭浏览器的过程),我们也可以手动指定Cookie的有效时间

//setMaxAge用来设置Cookie的最大有效时间,需要int型的参数,代表有效的秒数
cookie.setMaxAge(秒数);
//当参数大于0时,会设置为指定的秒数
cookie.setMaxAge(30);
//当参数等于0时,浏览器不会保存Cookie,Cookie立即失效
cookie.setMaxAge(0);
//当参数小于0时,和不设置是一样,当前会话有效
cookie.setMaxAge(-100);
//设置一个永久有效的Cookie,并非永久,只是使Cookie的生命很长而已
cookie.setMaxAge(60602436510);

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/149887
推荐阅读
相关标签
  

闽ICP备14008679号