javaee学习-Cookie使用范例

Java中的javax.servlet.http.Cookie类用于创建一个Cookie


Cookie类的主要方法


No.


方法


类型


描述


1


Cookie(String name, String value)


构造方法


实例化Cookie对象,传入cooke名称和cookie的值


2


public String getName()


普通方法


取得Cookie的名字


3


public String getValue()


普通方法


取得Cookie的值


4


public void setValue(String newValue)


普通方法


设置Cookie的值


5


public void setMaxAge(int expiry)


普通方法


设置Cookie的最大保存时间,即cookie的有效期,当服务器给浏览器回送一个cookie时,如果在服务器端没有调用setMaxAge方法设置cookie的有效期,那么cookie的有效期只在一次会话过程中有效,用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一次会话,当用户关闭浏览器,会话就结束了,此时cookie就会失效,如果在服务器端使用setMaxAge方法设置了cookie的有效期,比如设置了30分钟,那么当服务器把cookie发送给浏览器时,此时cookie就会在客户端的硬盘上存储30分钟,在30分钟内,即使浏览器关了,cookie依然存在,在30分钟内,打开浏览器访问服务器时,浏览器都会把cookie一起带上,这样就可以在服务器端获取到客户端浏览器传递过来的cookie里面的信息了,这就是cookie设置maxAge和不设置maxAge的区别,不设置maxAge,那么cookie就只在一次会话中有效,一旦用户关闭了浏览器,那么cookie就没有了,那么浏览器是怎么做到这一点的呢,我们启动一个浏览器,就相当于启动一个应用程序,而服务器回送的cookie首先是存在浏览器的缓存中的,当浏览器关闭时,浏览器的缓存自然就没有了,所以存储在缓存中的cookie自然就被清掉了,而如果设置了cookie的有效期,那么浏览器在关闭时,就会把缓存中的cookie写到硬盘上存储起来,这样cookie就能够一直存在了。


6


public int getMaxAge()


普通方法


获取Cookies的有效期


7


public void setPath(String uri)


普通方法


设置cookie的有效路径,比如把cookie的有效路径设置为"/xdp",那么浏览器访问"xdp"目录下的web资源时,都会带上cookie,再比如把cookie的有效路径设置为"/xdp/gacl",那么浏览器只有在访问"xdp"目录下的"gacl"这个目录里面的web资源时才会带上cookie一起访问,而当访问"xdp"目录下的web资源时,浏览器是不带cookie的


8


public String getPath()


普通方法


获取cookie的有效路径


9


public void setDomain(String pattern)


普通方法


设置cookie的有效域


10


public String getDomain()


普通方法


获取cookie的有效域

  response接口也中定义了一个addCookie方法,它用于在其响应头中增加一个相应的Set-Cookie头字段。 同样,request接口中也定义了一个getCookies方法,它用于获取客户端提交的Cookie。

访问cookie代码:

 1 protected void doGet(HttpServletRequest request,
 2             HttpServletResponse response) throws ServletException, IOException {
 3         // TODO Auto-generated method stub
 4         // 设置服务器端以UTF-8编码进行输出
 5         response.setCharacterEncoding("UTF-8");
 6         // 设置浏览器以UTF-8编码进行接收,解决中文乱码问题
 7         response.setContentType("text/html;charset=UTF-8");
 8         PrintWriter out = response.getWriter();
 9         // 获取浏览器访问访问服务器时传递过来的cookie数组
10         Cookie[] cookies = request.getCookies();
11         // 如果用户是第一次访问,那么得到的cookies将是null
12         if (cookies != null) {
13             out.write("您上次访问的时间是:");
14             for (int i = 0; i < cookies.length; i++) {
15                 Cookie cookie = cookies[i];
16                 if (cookie.getName().equals("lastAccessTime")) {
17                     Long lastAccessTime = Long.parseLong(cookie.getValue());
18                     Date date = new Date(lastAccessTime);
19                     out.write(date.toLocaleString());
20                 }
21             }
22         } else {
23             out.write("这是您第一次访问本站!");
24         }
25
26         // 用户访问过之后重新设置用户的访问时间,存储到cookie中,然后发送到客户端浏览器
27         Cookie cookie = new Cookie("lastAccessTime", System.currentTimeMillis()
28                 + "");// 创建一个cookie,cookie的名字是lastAccessTime
29         // 将cookie对象添加到response对象中,这样服务器在输出response对象中的内容时就会把cookie也输出到客户端浏览器
30         response.addCookie(cookie);
31     }
时间: 2024-08-24 16:41:29

javaee学习-Cookie使用范例的相关文章

JavaEE学习之Spring aop

一.基本概念 AOP——Aspect-Oriented Programming,面向切面编程,它是spring框架的一个重要组成部分.一般的业务逻辑都有先后关系,我们可以理解为纵向关系,而AOP关注的是横向关系,每一个关注点可以理解为一个横切面.例如我们的大部分代码都会涉及到日志记录,很多的数据库操作都会涉及到事务的创建和提交.那么从横向关注这些逻辑,他们都一个个的切面. AOP技术的具体实现,可以通过动态代理技术或者是在程序编译期间进行静态的"织入"方式.AOP经常使用的场景包括:日

JavaEE学习之Spring Security3.x——模拟数据库实现用户,权限,资源的管理

一.引言 因项目需要最近研究了下Spring Security3.x,并模拟数据库实现用户,权限,资源的管理. 二.准备 1.了解一些Spring MVC相关知识: 2.了解一些AOP相关知识: 3.了解Spring: 4.了解Maven,并安装. 三.实现步骤 本示例中使用的版本是Spring Security3.2.2.通过数据库实现Spring Security认证授权大致需要以下几个步骤: 1.新建maven web project(因为本示例使用的是maven来构建的),项目结构如下,

JavaEE学习之Maven配置文件pom.xml详解(转)

一.引言 (本文转载自:http://blog.csdn.net/longeremmy/article/details/9670619) 使用maven有一些时间了,一直没有好好将pom配置文件每个节点的意义好好了解一番.今天突然想来了解下:pom- project object model 项目对象模型.顾名思义,他是用来描述项目信息的,以及构建方式,依赖等.网上有一篇文章写的很详细,这里就借用一下,以备日后使用. 二.详解 1 <project xmlns="http://maven.

第十一章 Django框架学习——Cookie和session

第十一章 Django框架学习--Cookie和session 一.Cookie简介 二.装饰器版登录校验 三.session简介 四.如何在CBV中使用装饰器 一.Cookie简介 什么是Cookie(what): Cookie具体指的是一段小信息,它是服务器发送出来存储在浏览器上的一组组键值对,下次访问服务器时浏览器会自动携带这些键值对,以便服务器提取有用信息. Cookie的原理:由服务器产生内容,浏览器收到请求后保存在本地:当浏览器再次访问时,浏览器会自动带上Cookie,这样服务器就能

[转载]JavaEE学习篇之----Session&amp;&amp;Cookie

原文连接: http://blog.csdn.net/jiangwei0910410003/article/details/23337043 今天继续来看看JavaWeb的相关知识,这篇文章主要来讲一下Session和Cookie的相关知识,首先我们来看一下Cookie的相关知识: 一.Cookie 简介: Cookie是客户端技术,服务器把每个用户的数据以cookie的形式写给用户各自的浏览器.当用户使用浏览器再去访问服务器中的web资源时,就会带着各自的数据去.这样,web资源处理的就是用户

JAVAEE学习路线分享

今天把我的教学经验分享给大家.适合大多数人的学习路线.注:目前作者已经转行做java培训. 首先是培养兴趣.先开始学习HTML知识.也就是做网页,从这里开始比较简单,就是几个标签单词需要记住. 接着开始学习CSS,这里开始不要学习非常多,只要能作出简单类似hao123之类的静态网页就已经足够.HTML+CSS总共加起来不超过10天. 学完以上,就可以作出简单网页了,开始有兴趣了,哈哈,没想到我也是互联网的一份子了. 从这里开始可以学习javascript语言,这个语言和java类似,但是没有ja

JavaEE学习记录(一)--软件系统体系结构

1 常见软件系统体系结构B/S.C/S 1.1 C/S l C/S结构即客户端/服务器(Client/Server),例如QQ: l 需要编写服务器端程序,以及客户端程序,例如我们安装的就是QQ的客户端程序: l 缺点:软件更新时需要同时更新客户端和服务器端两端,比较麻烦: l 优点:安全性比较好. 1.2 B/S(*****) l B/S结构即浏览器/服务器(Browser/Server): l 优点:只需要编写服务器端程序: l 缺点:安全性较差. 2 WEB资源 2.1 Web资源介绍 l

我的JavaEE学习路线图

从学习Java开发到现在虽然也已经快三年了,但是要说到分享一下经验实在是不敢当.权当是对自己的一个总结吧,希望大家不吝指教,互相交流. 照旧,还是现来整理一下我学习Java的一个路线图吧,然后按照这个路线图来谈谈我的一些感受. 一.Java核心 这是学习Java的基础,掌握程度的深浅甚至直接影响后面的整个学习进程.Java的核心主要包括几个部分: 1.初级的有语法基础.面向对象思想. 学习任何一门语言语法都是必须的,因为Java的接近自然语言,也是一种相对比较容易学的语言.同时面向对象编程更是其

JavaEE学习路线

针对很多初识Java者,对如何学习Java.如何学好Java很迷茫,最近刚把JavaEE的东西学完,把我的学习的经验分享给大家,一条适合大多数人的学习路线. 第一部分:Java语言入门阶段 第二部分:Java语言高级阶段 第三部分:web前端 第四部分:Javaweb编程(核心阶段) 第五部分:企业框架 第六部分:项目阶段 第七部分:企业专题就业指导 如鹏网--专注于大学生就业的在线教育,在校不迷茫,毕业即辉煌!