Servlet(16)会话技术Session

来源:互联网 发布:常见的网络协议有哪些 编辑:程序博客网 时间:2024/06/05 20:29

①实现在不同页面查看信息,不同的用户显示的信息不同
Session是服务端的技术,利用此技术,服务器在运行时可以为每一个用户的浏览器创建一个独享的session对象,存在于服务器内存中,由于session为用户浏览器独享,所以用户访问服务器的web资源时,可以把各自的数据放在各自的session中,当用户去访问服务器中的其他web资源时,其他web资源再从用户各自的session中取出数据为用户服务。
session的使用
可以将某些数据供同一用户的各个页面使用;同时,防止用户非法登录到某个页面。

// 访问Session, 如果没有,则创建HttpSession session = request.getSession();// 设置属性session.setAttribute("uname", "jiaozl");session.setAttribute("age", 100);// 删除属性session.removeAttribute("sex");// -------------------------------------------------HttpSession session = request.getSession();String name = (String) session.getAttribute("uname");

session生命周期默认是30min 可以通过web.xml文件修改
- 修改Tomcat/conf/web.xml, 对所有web应用生效

<session-config>    <session-timeout>30</session-timeout></session-config>
  • 修改web应用内web.xml, 添加如下,只对此web应用有效
<session-config>    <session-timeout>20</session-timeout></session-config>
  • 发呆时间(10秒内访问都会有,超过十秒则消失)
session.setMaxInactiveInterval(10); // 10指的是发呆时间

⑤也可以通过函数使session失效

invalidate()

⑥服务器能够为不同浏览器提供不同session原理图
这里写图片描述
案例
- 用户登录后,才能操作管理页面。
当用户登录后,把用户信息存放到session中,然后在需要验证的页面获取用户信息,如果为null,说明用户非法,可以让其重新登录。
- 用户登录输入验证码

0 0
原创粉丝点击