百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程网 > 正文

JSP Cookie的使用 jsp创建cookie和读取cookie

yuyutoo 2024-10-12 01:05 6 浏览 0 评论

Cookie 不是 JSP 内置对象,而是由 Netscape 公司发明,用来跟踪用户会话(session)的方式。

  Cookie 由服务器生成并发送给浏览器(客户端),浏览器会将其以文本文件的形式存储在某个目录下。

  例如,IE 浏览器把 cookie 信息保存在类似于 C://windows//cookies 的目录下,当用户再次访问某个网站时,服务器就会要求浏览器查找并返回之前发送的 cookie 信息,来识别此用户。

  识别用户通常有以下步骤:

  1、服务器把 cookie 信息发送到浏览器,例如:用户 ID、用户名称等信息。

  2、浏览器在本地存储这些信息。

  3、浏览器再次向服务器发送请求时,它会同时将本地存储的 cookie 信息一同发送给服务器,然后服务器使用这些信息来识别用户或其它。

  cookie 的作用表现在以下方面:

  对特定对象的追踪,如用户的访问次数、最后访问时间等。

  统计网页的浏览次数。

  在 cookie 有效期内,记录用户的登录信息,简化下一次的登录过程。

  实现各种个性化服务,如”最近浏览过的商品“。

  注意:由于 cookie 会将用户的个人信息保存在客户端,如用户名、计算机名、以及浏览和登录的网站等。这些信息可能会包含一些比较敏感的内容,所以从安全角度来说,使用 cookie 存在着一定的风险,因此不建议在 cookie 中保存比较重要或隐私的内容。

  cookie方法

  cookie 常用方法如下:

方法

说明

public void setDomain(String pattern)

设置 cookie 的域名,如 biancheng.net

public String getDomain()

获取 cookie 的域名

public void setMaxAge(int expiry)

设置 cookie 有效期,单位:秒
默认仅在当前会话中存在

public int getMaxAge()

获取 cookie 有效期,单位:秒
默认为 -1,表示 cookie 保存到浏览器关闭为止

public String getName()

返回 cookie 的名称,名称创建后将不能被修改

public void setValue(String newValue)

设置 cookie 的值

public String getValue()

获取 cookie 的值

public void setPath(String uri)

设置 cookie 的路径
默认为当前页面目录以及子目录下的所有 URL

public String getPath()

获取 cookie 的路径

public void setSecure(boolean flag)

设置 cookie 是否要加密传输

public void setComment(String purpose)

设置 cookie 注释

public String getComment()

返回 cookie 注释,如果 cookie 没有注释,则返回 null

  JSP使用cookie

  JSP 使用 cookie 主要分为以下几个步骤。

  1)创建 cookie 对象

  创建 cookie 对象,name 代表 cookie 的名称,value 表示该名称对应的值,语法如下:

cookie cookie = new cookie(String name,String value);1复制代码类型:[java]

  注意:name 和 value 中不能包含空格和以下字符:

[ ] ( ) = , " / ? @ : ;1复制代码类型:[java]

  2)写入 cookie

  创建 cookie 对象后,调用 response.addCookie() 方法写入 cookie,代码如下:

response.addcookie(cookie);1复制代码类型:[java]

  3)设置 cookie 有效期

  调用 setMaxAge() 方法设置 cookie 的有效期(单位:秒),如将 cookie 有效期设置为 24 小时,代码如下:

cookie.setMaxAge(60*60*24); 1复制代码类型:[java]

  4)读取cookie

  调用 request.getCookies() 方法读取 cookie,该方法返回 HTTP 请求中的 cookie 对象数组,需要通过遍历进行访问。

  session和cookie的区别

  session 和 cookie 的区别如下:

session

cookie

将信息保存在服务器

将信息保存在客户端

保存的值是 Object 类型

保存的值是 String 类型

session 存储的数据随会话的结束而结束

cookie 可以长期保存在客户端

安全性高,可以保存重要的信息

安全性低,通常用于保存不重要的信息

  实际开发中,需要根据不同的业务需求来选择采用哪种技术,例如,用户的用户名和密码等敏感信息不能使用 cookie 存储,淘宝购物的”最近浏览过的商品“,则可以使用 cookie 存储在客户端。


开课吧广场-人才学习交流平台

相关推荐

MATLAB实例讲解—求二元函数的极值

实例程序...

解析式大赛的获奖作品代码和公式公布啦!

上方超级数学建模可加关注传播数学干货,学会理性的方式去思考问题大家期待已久的运行代码终于新鲜出炉了!!!抱歉让各位粉丝久等了接下来就是揭秘奇迹的时刻1、emoji解析式:无代码:holdon...

基于MATLAB的ACC控制算法设计及仿真测试

作者...

MATLAB基础学习之坐标转换(matlab改坐标)

(一)平面坐标转换1.cart2pol:将笛卡尔坐标转换为极坐标;2.pol2cart:将极坐标转换为笛卡尔坐标;(二)立体坐标转换1.cart2sph:将笛卡尔坐标转换为极坐标;2.sph2cart...

Java NIO:从 Buffer、Channel、Selector 到 Zero-copy、I/O 多路复用

NIO...

「太极创客」零基础入门学用物联网 - MQTT篇 1-9 自我测试

到目前为止,我们已经掌握了MQTT通讯的基本流程以及如何使用ESP8266来发布和订阅MQTT消息。这节课我们来进行自我测试。...

用豆包改了一下午程序,感觉它聪明得超乎想象

之前低估了AI的聪明程度,AI持续学习下去,未来可以做的事情太多了,编程已经算是比较复杂的事情都能完成得这么好,那些项目计划、工作报告更是小儿科。今天用豆包改了几个程序,提出的BUG也能修改完成...

Node-Media-Server开源流行Nodejs流媒体服务器

简介Node-Media-Server一个Node.js实现的RTMP/HTTP/WebSocket/HLS/DASH流媒体服务器。开源github地址:https://github.com/il...

如何应对 RAG 开发挑战?12 个痛点逐一击破

受到论文《SevenFailurePointsWhenEngineeringaRetrievalAugmentedGenerationSystem》的启发,并结合实际开发RAG(检...

团队协作-代码格式化工具clang-format

环境:clang-format:10.0.0前言统一的代码规范对于整个团队来说十分重要,通过git/svn在提交前进行统一的ClangFormat格式化,可以有效避免由于人工操作带来的代码格式问题。C...

如何编写自己的Arduino库?(arduino怎么自己写库)

支持一对一答疑的购买地址...

Auto CAD 命令(A)(cad命令aaw)

ABOUT(命令)显示有关产品的信息。...

一文读懂设计模式,看这篇就够了(设计模式是干嘛的)

转载:javadoop.com/post/design-pattern一直想写一篇介绍设计模式的文章,让读者可以很快看完,而且一看就懂,看懂就会用,同时不会将各个模式搞混。自认为本文还是写得不错的,花...

ASL开发者指南:构建健壮高效的C++应用

1.库介绍AdobeSourceLibraries(ASL),现在由stlab维护,是一组专注于提供高质量、经过实战检验的C++组件的集合。它最初由Adobe公司开发,旨在解决构建...

linux下GDB使用方法(linux怎么用gdb调试)

gdb是GNU开源组织发布的一个强大的Linux下的程序调试工具。一般来说,GDB主要帮助你完成下面四个方面的功能:1、启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。2、可让被调试的程...

取消回复欢迎 发表评论: