融资融券配资网站建设,中国做进出口的网站,做封面下载网站,网站开发团队哪些人转载地址#xff1a;http://developer.51cto.com/art/201106/269493.htm Session对象是HttpSessionState的一个实例。该类为当前用户会话提供信息#xff0c;还提供对可用于存储信息会话范围的缓存的访问#xff0c;以及控制如何管理会话的方法。下面介绍设置session失效的几…转载地址http://developer.51cto.com/art/201106/269493.htm Session对象是HttpSessionState的一个实例。该类为当前用户会话提供信息还提供对可用于存储信息会话范围的缓存的访问以及控制如何管理会话的方法。下面介绍设置session失效的几种方法。 在系统登录后都会设置一个当前session失效的时间以确保在用户长时间不与服务器交互自动退出登录销毁session。 具体设置很简单方法有三种 1在主页面或者公共页面中加入session.setMaxInactiveInterval(900);参数900单位是秒即在没有活动15分钟后session将失效。 这里要注意这个session设置的时间是根据服务器来计算的而不是客户端。所以如果是在调试程序应该是修改服务器端时间来测试而不是客户端。 2也是比较通用的设置session失效时间的方法就是在项目的web.xml中设置 !-- 设置session失效单位分 -- session-config session-timeout1/session-timeout /session-config 3直接在应用服务器中设置如果是tomcat可以在tomcat目录下conf/web.xml中找到session-config元素tomcat默认设置是30分钟只要修改这个值就可以了。 需要注意的是如果上述三个地方如果都设置了有个优先级的问题从高到低123 在一般系统中也可能需要在session失效后做一些操作 1控制用户数当session失效后系统的用户数减少一个等控制用户数在一定范围内确保系统的性能。 2控制一个用户多次登录当session有效时如果相同用户登录就提示已经登录了当session失效后就可以不用提示直接登录了。 那么如何在session失效后进行一系列的操作呢 这里就需要用到监听器了即当session因为各种原因失效后监听器就可以监听到然后执行监听器中定义好的程序就可以了。 监听器类为HttpSessionListener类有sessionCreated和sessionDestroyed两个方法 自己可以继承这个类然后分别实现。 sessionCreated指在session创建时执行的方法 sessionDestroyed指在session失效时执行的方法 给一个简单的例子 public class SessionListener implements HttpSessionListener{ public void sessionCreated(HttpSessionEvent event) { HttpSession ses event.getSession(); String idses.getId()ses.getCreationTime(); SummerConstant.UserMap.put(id, Boolean.TRUE); //添加用户 } public void sessionDestroyed(HttpSessionEvent event) { HttpSession ses event.getSession(); String idses.getId()ses.getCreationTime(); synchronized (this) { SummerConstant.USERNUM--; //用户数减一 SummerConstant.UserMap.remove(id); //从用户组中移除掉用户组为一个map } } } 然后只需要把这个监听器在web.xml中声明就可以了 listener listener-class com.demo.SessionListener /listener-class /listener 三种方法到这里介绍完了希望对你有帮助。转载于:https://www.cnblogs.com/csshaw/p/3700825.html