Servlet学习笔记07——什么是cookie,session?
7)cookie的路径问题
a.什么是cookie路径问题?
浏览器在向服务器上的某个地址发送请求时,
会查看cookie的路径是否与该地址匹配,只有
匹配的cookie才会被发送。
b.cookie的默认路径
等于添加该cookie的web组件的路径。
比如
/day07/biz01/addCookie.jsp添加了一个
cookie,则该cookie的默认路径是"/day07/biz01"
c.匹配规则:
请求路径必须等于cookie的路径,或者是其子路径。
比如
cookie的路径是 "/day07/biz01",则
如果请求路径是"/day07/findCookie1.jsp",
不匹配(即该cookie不会发送给服务器)。
如果请求路径是"/day07/biz01/findCookie2.jsp",匹配。
如果请求路径是"/day07/biz01/sub/
findCookie3.jsp",匹配。
d.修改cookie的路径
cookie.setPath(String path);
8)cookie的限制
a.cookie不安全。
注:对于敏感的数据,尽量不要以cookie的
形式存放。如果要存放在cookie里面,
一定要加密。
b.cookie可以被用户禁止。
c.cookie只能保存少量的数据。(大约是4k左右)
d.cookie的数量也有限制。
注:
浏览器只能存放约几百个cookie。
e.cookie只能存放字符串。
2.Session(会话)
(1)什么是session?
服务器端为了保存状态而创建的一个特殊的对象。
注:
该对象有一个唯一的id,一般称之为sessionId。
(2)工作原理
当浏览器第一次访问服务器时,服务器会创建
session对象,并且将sessionId默认以cookie的
形式发送给浏览器;
当浏览器再次访问服务器时,会将sessionId发
送过来,服务器可以利用sessionId找到对应的
session对象。
(3)如何获得session对象?
1)方式一
HttpSession s =
request.getSession(boolean flag);
注:
a. HttpSession是一个接口。
b. 当flag为true时,先查看请求当中有没有
sessionId,如果没有,创建一个session对象;
如果有,则依据sessionId查找对应的
session对象,如果找到了,则返回,
找不到,则创建一个新的session对象。
c. 当flag为false时,先查看请求当中有没有
sessionId,如果没有,返回null;
如果有,则依据sessionId查找对应的
session对象,如果找到了,则返回,
找不到,返回null。
2)方式二
HttpSession s =
request.getSession();
等价于 request.getSession(true)。
(4)绑订数据相关的几个方法
//绑订数据
setAttribute(String name,Object obj)
//依据绑订名,获得绑订值
Object getAttribute(String name)
//解除绑订
removeAttribute(String name)
(5)session超时
1)什么是session超时?
服务器会将空闲时间过长的session对象删除掉。
注:
a.这样做的目的是为了节省内存空间的占用。
b.大部分服务器默认的时间限制是30分钟。
2)如何修改超时时间限制?
方式一
修改web.xml文件中的配置
<session-config>
方式二
setMaxInactiveInterval(int seconds)
(6)删除session
invalidate()
3.session相关的案例
(1)登录
a.流程
用户填写用户名和密码并提交,
服务器端依据用户名和密码查询数据库,
如果有匹配的记录,则登录成功(返回欢迎页面);
否则 登录失败(在登录页面中,提示用户名或密码错误)。
Servlet学习笔记07——什么是cookie,session?的更多相关文章
- python学习笔记(3)---cookie & session
一.cookie & session 1.cookie: cookie 就是由服务器发送给客户端的特殊信息,而这些信息以文本的方式存放在客户端,然后客户端每次向服务器发送请求都会带上这些特殊信 ...
- JavaWeb学习笔记五 会话技术Cookie&Session
什么是会话技术? 例如网站的购物系统,用户将购买的商品信息存储到哪里?因为Http协议是无状态的,也就是说每个客户访问服务器端资源时,服务器并不知道该客户端是谁,所以需要会话技术识别客户端的状态.会话 ...
- JavaWeb学习笔记(六)—— Cookie&Session
一.会话技术简介 会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. 在日常生活中,从拨通电话到挂断电话之间的一连串的你问我答的过程 ...
- # jsp及servlet学习笔记
目录 jsp及servlet学习笔记 JSP(Java Server Page Java服务端网页) 指令和动作: servlet(小服务程序) jsp及servlet学习笔记 JSP(Java Se ...
- Servlet学习笔记(四)
目录 Servlet学习笔记(四) 一.会话技术Cookie.session 1. 什么是会话技术? 2. 会话技术有什么用? 3. Cookie 3.1 什么是Cookie? 3.2 使用Cooki ...
- 学习笔记 07 --- JUC集合
学习笔记 07 --- JUC集合 在讲JUC集合之前我们先总结一下Java的集合框架,主要包含Collection集合和Map类.Collection集合又能够划分为LIst和Set. 1. Lis ...
- 机器学习实战(Machine Learning in Action)学习笔记————07.使用Apriori算法进行关联分析
机器学习实战(Machine Learning in Action)学习笔记————07.使用Apriori算法进行关联分析 关键字:Apriori.关联规则挖掘.频繁项集作者:米仓山下时间:2018 ...
- Servlet学习笔记(三)
目录 Servlet学习笔记(三) 一.HTTP协议 1.请求:客户端发送欸服务器端的数据 2.响应:服务器端发送给客户端的数据 3.响应状态码 二.Response对象 1.Response设置响应 ...
- Servlet学习笔记(二)
目录 Servlet学习笔记(二) Request对象 1.request和response对象: 2.request对象继承体系结构: 3.什么是HttpServletRequest ? 4.Htt ...
随机推荐
- PHP用mysql数据库存储session
大部分使用php的人一旦应用到session都会使用cookie. cookie虽好可是它也会给我们带来一些隐患的. 隐患一:如果客户端机器的cookie一旦因病毒而失效了,那么session也就相当 ...
- struts2的java.lang.NoSuchMethodException异常处理
1. 你有没有试试看 其它的方法能不能用,要是都是这种情况的话,可能是你的Action类没有继承structs里面的DispatchAction或者其它的类.还有你注意下方法的参数列表,类型顺序要正确 ...
- HDU 4081—— Qin Shi Huang's National Road System——————【次小生成树、prim】
Qin Shi Huang's National Road System Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/3 ...
- 利用DOS命令做伪装成图片的压缩包,看上去是图片其实是个压缩包用2条命令即搞定
在很多地方我们看到一张图片,然后把这张图片下载到本地,改后缀名为xx.rar,即变成了压缩包. 比如下面这个图片:(把以下图片保存到本地,后缀名xx.png 改为 xx.rar,解压试试) 怎么样,是 ...
- 在mac上使用github for mac 创建并上传项目
1.下载github for mac https://mac.github.com/ 2.登陆 偏好设置 3.用Xcode 创建一个项目,勾上“create local git respository ...
- codevs 1213 解的个数
1213 解的个数 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 已知整数x,y满足如下面的条件: ax+by+c = ...
- c语言函数指针的几种使用方式
1.直接定义函数指针赋值并使用. #include <stdio.h> int max(int x, int y) { if (x > y) return x; else retur ...
- Azure 6 月新公布
Azure 6 月新发布:磁盘加密预览版 , CDN 用户上传 HTTPS 自有证书及价格调整. Azure 磁盘加密预览版现已在中国发布 Azure 磁盘加密预览版已对 Azure 中国云地区的 W ...
- Build 2017 | 今儿来说说火得不行的认知服务吧(内附微软开发者大会在线峰会报名地址)
Everybody,新一期的 Build 2017 大会新技术详谈又来了,今天小编给大家带来了一个既智能又有趣的技术,你一定喜欢!不卖关子了,直奔我们本期的主题: [只需几行代码,就能让任何应用更智能 ...
- Homestead 中使用 laravel-mix 问题汇总
按照 laravel 官方文档在准备使用 laravel-mix 时遇到了很多问题,许多同学应该会遇到同样的问题,自己花了一些时间来解决这些问题,在此做个笔记帮助大家减少填坑的时间. 环境 larav ...