深入解析:Cookie与Session会话技术原理与应用

更新:10-27 名人轶事 我要投稿 纠错 投诉

本篇文章给大家谈谈深入解析:Cookie与Session会话技术原理与应用,以及对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

Cookie

概念:客户端会话技术,保存数据到客户端

快速入门

1.创建cookie对象并绑定数据

新的Cookie(字符串名称,字符串值);

2.发送cookie对象

响应对象。 response.addCookie(Cookie cookie);

3.获取cookie并获取数据

Cookie[] request.getCookies();

cookie 的工作原理:

image.png

cookie细节:

1.一次可不可以发送多个cookie?

是的,您可以创建多个cookie对象并使用response多次调用addCookies(Cookie cookie);

2.cookie在浏览器中存放多长时间

1.默认情况下,浏览器关闭时数据会被销毁

2、持久化存储:

setMaxAge(int 秒);

1.正数:将cookie数据写入硬盘上的文件,持久存储,cookie生存时间

2.负数默认存储在内存中

3. 零删除cookie信息

3.cookie能不能存中文

tomcat8之前,无法直接存储中文

中文数据需要转码,一般采用URL编码(%E3)

例如:

SimpleDateFormat format=new SimpleDateFormat("yyyy 年MM 月dd 日HH:mm:ss");

String lastTime=format.format(日期);

字符串编码=URLEncoder.encode(lastTime, "utf-8");

cookie.setValue(编码);

cookie.setMaxAge(60 * 60 * 60 * 24 * 30);

响应.addCookie(cookie);

字符串值=cookie.getValue();

字符串解码=URLDecoder.decode(value, "utf-8"); tomcat8之后tomcat支持中文

4.cookie共享问题

假设一个tomcat服务器中部署了多个web项目,这些web项目中cookie是否可以共享?

默认不能共享

1.setPath(字符串路径);设置cookie获取范围。默认情况下,设置当前虚拟目录。如果要共享,可以将路径设置为“/”

2、不同tomcat服务器之间cookie共享数据

setDomain(字符串路径);如果设置一级域名相同,多台服务器之间可以共享cookie

例如:setDomain("www.baidu.com");

5.cookie的特点

1.Cookie在客户端浏览器上存储数据

2、浏览器对单个cookie的大小有限制,对同一域名下的cookie总数有限制(20个)

作用:

1. Cookie 一般用于少量不太敏感的数据。

2、无需登录即可完成服务器对客户端的识别。

JSP入门学习

1.概念 Java Server Pages : Java服务器端页面

可以理解为:一个特殊的页面,其中既可以定义html页面,也可以定义java代码

使用并简化写作

2.JSP原理

image.pngJSP本质上是一个servlet

3.JSP脚本:JSP定义java代码的方式

%code%:定义的java代码,在服务方法中,服务方法中能定义的内容,脚本都可以定义

2.%!Code%:定义的java代码,位于jsp转换后的java类的成员位置

3.%=Code%:定义的java代码将输出到页面

4.JSP内置对象

1.不需要在JSP页面中获取和创建,可以直接使用该对象

2.jsp共有9个内置对象

response.getWriter 和 out区别

tomcat服务器在真正响应客户端之前,会先查找response buffer数据,然后再查找out buffer数据。

response.getWriter数据输出总是在out.write()之前

Session

概念:服务器端会话技术,在一个会话中的多个请求之间共享数据,并将数据保存在服务器中的对象中。 Http会话

快速入门:

1.获取session对象

HttpSession httpSession=request.getSession();

2.HttpSession对象

对象getAttribute(字符串名称)

void setAttribute(字符串s,对象o)

无效删除属性(字符串名称)

Session原理:Session的实现依赖于cookie

示意图:

image.png

细节:

1、当客户端关闭但服务端未关闭时,两次获取的session是否相同

默认情况下。不

如果你需要同样的,你可以创建一个cookie,JSESSIONID设置最大生存时间,并使cookie持久化。

HttpSession 会话=request.getSession();

Cookie cookie=new Cookie("JSESSIONID",session.getId());

cookie.setMaxAge(60*60);

响应.addCookie(cookie);2。客户端没有关闭,服务器也关闭了。两次获得的session是否相同?

不一样

会话钝化:在服务器正常关闭之前将会话对象序列化到硬盘。

session的激活:服务器启动后,将session文件转换为内存中的session对象。

3.session什么时候销毁?

1.服务器正常关闭

2.session对象调用invalidate

3. 默认会话过期时间为30 分钟。

选择性配置修改

30

用户评论

生命一旅程

终于看到讲明白了cookie和session的文章了!

    有17位网友表示赞同!

初阳

以前总觉得这两个概念有点糊涂,这篇文章解释得很清晰。

    有5位网友表示赞同!

苏樱凉

原来是这样子的!太感谢分享这种知识!

    有6位网友表示赞同!

ok绷遮不住我颓废的伤あ

我一直在学习Web开发,这篇关于会话技术的文章很有帮助。

    有15位网友表示赞同!

゛指尖的阳光丶

想要了解一下如何用cookie和session来提高网站的用户体验。

    有13位网友表示赞同!

ー半忧伤

看来需要好好研究一下这两个技术,它们对网页应用太重要了。

    有13位网友表示赞同!

拽年很骚

之前只知道他们在代码里出现过,现在终于明白它们的原理是什么了。

    有17位网友表示赞同!

墨染殇雪

这个博客分享的技术内容真的很详细,赞!

    有8位网友表示赞同!

青瓷清茶倾城歌

想通过学习cookie和session来提升我的网站安全性

    有5位网友表示赞同!

心脏偷懒

我已经开始使用cookie和session了,但是这篇解释的文章更让我了解它们的使用场景了。

    有8位网友表示赞同!

采姑娘的小蘑菇

这种技术应用在电商平台和论坛上是不是也很常用?

    有19位网友表示赞同!

良人凉人

看来以后开发网页还要注意这些细节

    有15位网友表示赞同!

减肥伤身#

分享这个博客给我的朋友们,他们都在学习Web开发

    有15位网友表示赞同!

有你,很幸福

这篇文章让我了解到很多关于网站后台的数据处理方法。

    有20位网友表示赞同!

你tm的滚

非常实用的一篇博客!希望能看到更多关于Web开发者技术的文章。

    有15位网友表示赞同!

箜明

学习web 开发的小白,觉得这篇博文解释的非常到位。

    有19位网友表示赞同!

柠栀

我已经尝试用cookie和session实现一个简单的登录功能!

    有9位网友表示赞同!

有些人,只适合好奇~

我要仔细研究一下代码示例,希望能自己也写出应用程序来。

    有16位网友表示赞同!

恰十年

对新手来说,这篇文章是一个很好的入门教程。

    有14位网友表示赞同!

艺菲

学习知识还是要多动手实践才行!

    有13位网友表示赞同!

【深入解析:Cookie与Session会话技术原理与应用】相关文章:

1.蛤蟆讨媳妇【哈尼族民间故事】

2.米颠拜石

3.王羲之临池学书

4.清代敢于创新的“浓墨宰相”——刘墉

5.“巧取豪夺”的由来--米芾逸事

6.荒唐洁癖 惜砚如身(米芾逸事)

7.拜石为兄--米芾逸事

8.郑板桥轶事十则

9.王献之被公主抢亲后的悲惨人生

10.史上真实张三丰:在棺材中竟神奇复活

上一篇:微信浏览器网页拦截问题?366API跳转技巧助您恢复访问 下一篇:配置JDK7环境变量与安装指南