壹
定义:我们知道HTTP是一种无状态的协议。当我们的客户通过客户端向服务器发送请求(request)时, 服务器接收请求,并响应。然后该链接就会关闭,此时该链接不会保留关于客户的任何信息,当下一次连接时,服务器没有了以往的链接信息,就不能保证这一次链接和前一次链接是否属于同一个客户。所以,session的出现,就是来解决这一问题的,session对象会一直保持客户端与服务器的连接(默认时间为30分钟,一旦过了时间,无应答请求,session对象消失),我们可以设置生命周期,延迟时间。
贰
(1)、创建于获取客户会话
创建会话
格式 :session.setAttribute(String name,String value);
name为属性,value为对应属性值
获取指定name的相联系的属性
格式:session.getAtrribute(String name);
例一
运行结果
你会注意到在成功页面的地址栏中有着一段信息“?username=jiangjun”,我们知道,username为输入框的属性,而jiangjun为输入的正确的内容,这表示三点
1、在forward.jsp中所输入的内容符合要求,所以才跳转成功页面。
2、session.serAttribute方法在username上的赋值成功。
3、你的信息不安全了。
如果注意一些安全性很高的网站,他的网址所表现的内容很少,以防止恶意攻击,这就在于form表单中method属性的设置,如设置为post,则不会显示出你所输入的内容,如设置为get,则反。
(2)、移除指定对象
有时我们想移除一些指定对象(JSP可以移除任何已保存的对象),session的removeAttribute则可以完成。
格式:session.removeAtrribute(String name);
name为要移除的对象名。
(3)、延迟会话时间
方法 | 说明 |
---|---|
getLastAccessedTime() | 返回客户端最后一次发送这个会话相关联的请求时间 |
getMaxInactiveInterval | 以秒为单位返回一个会话内两个请求的时间间隔,Servelet容器在客户访问期间保存这个会话处于打开状态 |
setMaxInactiveInterval(int interval) | 以秒为单位指定在服务器小程序容器使该会话无效之前的客户请求之间的最长时间,也就是超时时间。 |