cookie的事情道理
Cookie会以[key|value]对的字符串情势是存储在用户的盘算机上。另外,cookie还具有域,途径和超时等属性。
每次用户接见启用了cookie的网站时,Web服务器都会将分外数据增加到HTTP标头中并相应Web阅读器。在下次用户再次接见统一站点时,Web阅读器还会将HTTP要求标头中的cookie发送到Web服务器。
用户还能够在支撑禁用cookie功用的Web阅读器中禁用cookie,如火狐 Firefox,IE ......
JSP中怎样运用Cookie?
JSP供应了API,许可经由过程类javax.servlet.http.Cookie的对象来有效地运用cookie 。下面我们就来简朴引见在JSP中运用Cookie的要领。
1、运用JSP设置Cookie
运用JSP设置Cookie能够分红三个步骤:
1)、建立一个Cookie对象:
须要挪用Cookie的组织函数,例:
Cookie cookie = new Cookie("key","value");
申明:Cookie都是以键值对的情势存在,因而运用cookie称号和值做参数(它们都是字符串)。
注:cookie称号和值不能包括空格或许以下的字符:
[ ] ( ) = , " / ? @ : ;
2)、 设置有效期
Cookie有本身的生命周期,称为到期时候。假如未设置cookie的超时,则在用户封闭Web阅读器时将删除该超时。
我们能够挪用setMaxAge()要领来设置cookie的有效期,即在多长时候(以秒为单元)内有效。
示例:将有效期设为了24小时能够如许设置
cookie.setMaxAge(60*60*24);
3)、将cookie发送至HTTP相应头中
须要挪用response.addCookie()要领来向HTTP相应头中增加cookie。例:
response.addCookie(cookie);
简朴示例:从Web服务器发送cookie
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="javax.servlet.http.Cookie"%> <!DOCTYPE html> <html> <head> <title>设置Cookie</title> </head> <body> <% // 编码,处理中文乱码 String str = URLEncoder.encode(request.getParameter("name"),"utf-8"); // 设置 name 和 url cookie Cookie cookie = new Cookie("ki4网","http://www.ki4.cn/); // 设置cookie逾期时候为24小时。 cookie.setMaxAge(60*60*24); // 在相应头部增加cookie response.addCookie(cookie); %> </body> </html>
运用 JSP 读取 Cookie
要从HTTP要求中读取cookie,首先要挪用 要求对象的getCookies()要领,此要领返回要求标头中的可用cookie列表;或许运用getName()要领和getValue()要领来猎取每个cookie的称号和值。然后能够阅读一切这些cookie。以下是运用getCookies()要领读取cookie信息的示例:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="javax.servlet.http.Cookie"%> <html> <head> <title>读取Cookie</title> </head> <body> <% Cookie[] list = request.getCookies(); if(list != null){ for(int i = 0; i < list.length;i++){ out.println(list[i].getName() + ":" + list[i].getPath()); } } %> </body> </html>
运用JSP删除现有的cookie
假如要删除已发送到Web阅读器的现有cookie,能够运用该 cookie对象的setMaxAge()要领 将其有效期设置为零。
步骤以下:
● 猎取一个已存在的cookie然后存储在Cookie对象中。
● 运用setMaxAge()要领将cookie的有效期设置为0。
示例:以下是删除一切Cookie的示例。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="javax.servlet.http.Cookie"%> <!DOCTYPE html> <html> <head> <title>删除cookie</title> </head> <body> <% Cookie[] list = request.getCookies(); if (list != null) { for (int i = 0; i < list.length; i++) { list[i].setMaxAge(0); out.println("cookie:" + list[i].getName() + "已删除"); } } %> </body> </html>
以上就是本篇文章的全部内容,愿望能对人人的进修有所协助。更多精彩内容人人能够关注ki4网相干教程栏目!!!
以上就是JSP中怎样运用Cookie?(代码示例)的细致内容,更多请关注ki4网别的相干文章!