sesson和request的区别与联系


1.request

request对象对应的接口 :javax.servlet.ServletRequest 其子接口:javax.servlet.http.HttpServletRequest


request范围内的数据是用户请求访问的当前的web组件以及和当前web组件共享同一个用户请求的其它web组件。

比如一个jsp页面,<%@include>指令以及<forward>标记包含的其他jsp文件也能访问共享数据,存放在HttpSeverletRequest对象中。


2.session
session对象 对应的接口 :javax.servlet.http.HttpSession
session范围的数据存在于整个http对话的生存周期内。三种情况下,资源会被释放掉。客户端关闭浏览器,会话过期,服务器端调用了HttpSession的invalidate方法。


.两者共有方法:setAttribute(String name , Object o ) ,getAttribute(String name) ;


3.request对象和session对象的最大区别是生命周期


request对象的生命周期是针对一个客户端(说确切点就是一个浏览器应用程序)的一起请求 当请求完毕之后,request里边的内容也将被释放点

而session的生命周期也是针对一个客户端 但是却是在别人设置的会话周期内(一般是20-30分钟) session里边的内容将一直存在 即便关闭了这个客户端浏览器 session也不一定会马上释放掉的

一般来讲是:page->request->session->application,生命周期逐次变长

4.request和session的优点和缺点很明显


request占用资源比较少 安全性也比较高 可是相对来说 缺乏持续性
而session则相对来说 对资源的消耗会大点 安全性相对来说也会稍微低点 可是它能实现比如会话跟踪技术
request的作用域范围只在两个相邻页面起作用,而在三个或三个以上的页面就不行!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值