session小结

1.为什么要用session?
首先我们要明白的一点是有关于http协议,因为http协议本身是一种无状态协议,由于网络的发展,使得大量客户端与服务器进行交互的web应用程序的出现,http协议的这种无状态性显然无法满足交互式web应用程序,比如说有人登录了自己的qq空间,登录进去之后会看到自己的空间主页,如果修改了其中的一些内容,修改后提交,这里就会出现问题,因为服务器收到提交请求时无法判断这是具体的哪个客户端提交的请求,session的出现则很好的解决了这个问题。
我们先来看看session的创建,session是在服务器端创建的,java中通过httpservletrequest中的getsession方法来创建session,session被成功创建之后,服务器为该session生成唯一的session id ,客户端第一次向服务器请求成功后得到此session id,进行另外一次请求时,这个session id会和请求一起发送给服务器,服务器会利用这个id进行匹配找到这个session,利用这个session来响应请求
2.得到session的两种方法(true/false)的区别。
两种方法都会返回session对象,当session没有创建时,true方法会创建一个session并返回该session,false方法则返回null,当session已经创建,则都返回该session对象。
3.session存储的3个方法。(cookie,url重写,隐藏域)

4.请求转发的3种方式。(include, forward ,sendredirect)
Include是将目标url内容包含到当前servlet中输出;
Forward是直接指向目标url并输出;
Sendredirect是指客户端重新发起一次请求,这个请求指向其url参数,所以客户端地址会改变为请求的url地址,这种方式也称为重定向。

5.request、session、application三个对象范围。
Request中的数据,仅在一个请求应答的流程中有效;
Session中的数据对应客户机的浏览器进程,即浏览器不关闭,服务器session中数据就有效。
Context/application中的数据,只要web服务器不关闭,就一直存在!

6.改变session存在时间的方法及优先级。
1)tomcat中的配置;
2)web.xml中进行配置;
3)调用session对象中的setMaxInactiveInterval()方法来进行设置。
其中优先级为从低到高。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值