session的原理

 我来答
百度网友68b07c1
推荐于2017-10-08 · TA获得超过193个赞
知道答主
回答量:127
采纳率:0%
帮助的人:193万
展开全部
网上对于session的讲解很多,我就说说自己的理解吧
1.session是通过键值对存储的。也就是说一个变量名对应一个值,session一般存储在内存中,存储时,输入变量名和值就可以

2.与session类似的有cookie,request,application等等,原理大多一样,区别就在于这些变量的存储有效期和存储范围,cookie一般的有效期根据系统设置不同而不同,主要用在比如用户登录方面,简单来说关闭浏览器时cookie的内容也不会消失。session和cookie差不多,区别就在于关闭浏览器后变量就失效了。
request只是存在于一次画面请求中,也就是说画面提交之后,变量就失效了。
application是全局的,每个用户都会调用到该变量,比如帖子的浏览量信息。
网易云信
2023-12-06 广告
网易云信提供一站式的 1 对 1 UIKit 组件库,可以更快地搭建 1 对 1 社交平台,能够快速实现音视频呼叫、音视频通话、1对1消息发送、美颜和礼物功能,直接可以复用我们的组件源码就可以了。优势:1、全套1对1 UI组件,接入更快;2... 点击进入详情页
本回答由网易云信提供
brightming2
2011-12-20
知道答主
回答量:22
采纳率:0%
帮助的人:24.5万
展开全部
1、session的存放处
容器为每个部署的web应用维护一个context,每个context与一个manager关联,这个manager就管理着所有的session。
2、session的产生时机
当用户在某个地方请求session的时候,实际是这样的:request请求session,首先会找到关联的servletcontext,然后由这个servletcontext找到关联的context,然后由context找到关联的manager,然后调用它的获取session的方法,如果session不存在,则为其创建一个,返回。
3、session的超时
容器有后台线程在执行一些周期性的任务,而检查session是否超时就是其中之一。默认tomcat的session的超时是30分钟,这个值是设置在context的。当后台线程判断出一个session的最后访问时间距离当前的时间时长大于设置的最大空闲时间时,就会将其收回,即失效了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhangting58122
2011-12-21
知道答主
回答量:12
采纳率:0%
帮助的人:4.4万
展开全部
我理解的session是把一些变量存放到里面,在哪用到都能用到,它可以跨页面式的提交东西,比post取值要方便
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式