Session
http协议的特点
http是超文本传输协议,文本表示协议,超文本就是有格式的文本。格式表示可以设置文本的文字颜色,文字大小。
特点:是无状态的,无状态的是值协议本身不保存连接信息。每次访问时,http协议不会记录用户访问过的url。为了实现不同页面之间传递信息不依赖于http协议,因此web容器开发了在不同页面间传递信息的对象。具体的办法有
- cookie
- session
- application
- url传参
- 表单提交
session
session:是内置对象。是javax.servlet.HttpSession类的对象。
session的几个理解
- 会话:会话是一段时间,这段时间默认从打开浏览器开始到关闭浏览器为止。
- 一次会话可以包含多次请求与响应
- 会话的核心是共享数据
- session是私有的
在jsp页面中获取session
ession是内置对象,直接写就可以了。
在Servlet中获取session
request对象的getSession()方法可以获取session对象。
session中存储数据的类型
session的setAttribute方法能存储object类型的数据。
session存储数据的位置
session是在服务端存储数据。
session的安全性问题
由于session是存储在服务器内存中的,因此是安全的。
立刻销毁用户在session中存储的数据
调用session对象的invalidate()方法。
session在服务端默认的存储时间
30分钟。
更改seeion默认的储存时间
在web.xml中修改
<session-config>
<session-timeout>10</session-timeout>
</session-config>
向session中存储和获取对象
session.setAttribute(String,object)
object obj=session.getAttribute(key)
移除session中存储的数据
session.removeAttribute(key)