图解session事理

前面讲了cookie天生机制:java servlet条记:图解cookie事理(比如上岸时的记住密码)

同时,也用cookie写了一个上岸时记住用户名和密码的小例子:java中用cookie实现上岸时记住密码(附源码)

jsp判断session是否过期java servlet笔记图解session道理用于断定上岸是否过时 Vue.js

本日来说说java servlet中一个非常非常主要的工具,那便是session。

一、健身房的储物柜

考虑这个场景:

李佳汜到健身房去练胸肌,首先领了钥匙,然后进了换衣间,把衣服,裤子,手机,钱包都放在盒子里面。

毛竞也到健身房,去练翘臀。
首先领了钥匙,然后 进了换衣间,把衣服,裤子,手机,《Java 21天从入门到精通》也放在了一个盒子里,但是这个盒子是和李佳汜的是不同的。

健身房,就相称于做事器,盒子,便是会话Session。

切换到我们常见的购物网站的场景

李佳汜上岸天猫之后,在购物车里看到的物品是烛炬和皮鞭

毛竞上岸天猫之后,在购物车里看到的物品是手铐和《Java 21天从入门到精通》

二、什么是session

Session对应的中文翻译是会话。

会话指的是从用户打开浏览器访问一个网站开始,无论在这个网站中访问了多少页面,点击了多少链接,都属于同一个会话。
直到该用户关闭浏览器为止,都属于同一个会话。

三、创建session

session.setAttribute(\"大众name\公众, \公众teemo\"大众);

session工具保存数据的办法,有点像Map的键值对(key-value)

\"大众name\公众是键,\"大众teemo\"大众 是值

四、获取session

session.getAttribute(\"大众name\公众);

通过session,根据\公众name\"大众 取出对应的名称

五、session和cookie的关系

回到健身房的储物柜这一段:

李佳汜和毛竞都有自己的盒子,那么他们怎么知道哪个盒子是自己的呢?

通过钥匙就能找到自己的盒子了。

盒子对应做事器上的Session。

钥匙对应浏览器上的Cookie。

六、session事理示意图

七、如果没有cookie,session怎么事情

如果浏览器把cookie功能关闭,那么做事端就无法获取jsessionid,每一次访问,都会天生一个新的session工具。

为理解决这个问题,可以利用

response.encodeURL(\公众getSession.jsp\公众))

response.encodeURL方法会把getSession.jsp这个url转换为

getSession.jsp;jsessionid=22424AEA86ADBE89F335EEB649D997A8

通过这个办法,提交jsessionid到做事器。
做事器根据这个jsessionid匹配到对应的session. 与session干系的功能,就可以正常事情了。

八、session的有效期

比如登录一个网站,登录后,在短韶光内,依然可以连续访问而不用重新登录。

但是较永劫光不登录,依然会哀求重新登录,这是由于做事真个session在一段韶光不该用后,就失落效了。

这个韶光,在Tomcat默认配置下,是30分钟。

可以通过 d:/tomcat/conf/web.xml 中的session-config 配置进行调度

感谢你长得这么俊秀还来看我的文章,喜好就点关注哦!