方法一: 在使用了struts2框架的任何地方使用
ServletActionContext.getRequest().getSession().setMaxInactiveInterval(xxx);
方法二:
在Action中定义一个HttpServletRequest的成员对象req;
Action类实现ServletRequestAware接口,实现其中的方法;
在实现的方法中编写: req=方法参数;
然后在该Action中任何需要用到Session的地方使用req.getSession()......
方法三:
在工程的 web.xml中 设置session的有效期
<session-config>
<session-timeout>30</session-timeout>
</session-config>
session-timeout元素用来指定默认的会话超时时间间隔,以分钟为单位。该元素值必须为整数。如果session-timeout元素的值为零或负数,则表示会话将永远不会超时。 session-timeout的取值范围是1-1440。
setMaxInactiveInterval和session-config的比较:
1、setMaxInactiveInterval的优先级高,如果setMaxInactiveInterval没有设置,则默认是session-config中设置的时间。
2、setMaxInactiveInterval设置的是当前会话的失效时间,不是整个web服务的。
3、setMaxInactiveInterval的参数是秒,session-config当中配置的session-timeout是分钟。