Cookies

it2022-05-06  5

Cookies

开发工具与关键技术:MyEclipse 10、java 作者:陈智鸿 撰写时间:2019年07月25日

Cookies是存储在客户机的文本文件,它们保存了大量轨迹信息。在servlet技术基础上,JSP显然能够提供对HTTP cookies的支持。 使用Cookies的几个步骤: 1、设置Cookies 设置Cookies有三个步骤: (1)、创建一个Cookie对象:调用Cookie函数 (2)、设置有效期:调用setMaxAge()函数 (3)、将Cookies发送至HTTP响应头中:调用response.addCookie()函数 示例代码:

protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //设置请求编码格式 req.setCharacterEncoding("utf-8"); //设置响应编码格式 resp.setContentType("text/html;charset=utf-8"); //创建Cookie Cookie front = new Cookie("front", "frontCookie"); Cookie last = new Cookie("last", "lastCookie"); //设置Cookie的有效期 last.setMaxAge(24*60*60);//以秒为单位 //调用addCookie函数把Cookie发送至HTTP响应头中 resp.addCookie(front); resp.addCookie(last); resp.getWriter().write("设置Cookie成功"); }

页面效果: 2、获取Cookies 获取Cookies有二个步骤: (1)、声明一个Cookie集合来接收Cookie信息:调用getCookies()函数获取Cookie的信息。 (2)、遍历Cookie集合获取Cookie信息。 示例代码:

protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //设置请求编码格式 req.setCharacterEncoding("utf-8"); //设置响应编码格式 resp.setContentType("text/html;charset=utf-8"); //调用getCookies()函数获取Cookie的集合 Cookie[] cks = req.getCookies(); if(cks != null){//判断集合是否为空 //遍历Cookie集合 for(Cookie c:cks){ String name = c.getName();//获取Cookie的名称 String value = c.getValue();//获取Cookie的值 System.out.println(name+":"+value);//输出 } } }

运行效果: 3、删除Cookies 删除Cookies有三个步骤: (1)、声明一个Cookie集合来接收Cookie信息:调用getCookies()函数获取Cookie的信息。 (2)、遍历Cookie集合获取Cookie信息。 (3)、通过条件判断找出需要删除的Cookie,设置有效期为0 示例代码:

protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //设置请求编码格式 req.setCharacterEncoding("utf-8"); //设置响应编码格式 resp.setContentType("text/html;charset=utf-8"); //调用getCookies()函数获取Cookie的集合 Cookie[] cookies = req.getCookies(); if(cookies != null){//判断集合是否为空 System.out.println("找到Cookie"); //遍历Cookie集合 for(Cookie cookie:cookies){ if(cookie.getName().compareTo("last")==0){ //设置Cookie的有效期 cookie.setMaxAge(0); //调用addCookie函数把Cookie发送至HTTP响应头中 resp.addCookie(cookie); System.out.println("删除last cookie"); } } }else{ System.out.println("没有Cookie"); } }

运行结果: 页面效果:


最新回复(0)