为单个Web应用配置Session时,可以在该Web应用的web.xml文件中使用<session-config>元素进行配置,具体配置如下:
<?xml version=”1.0″ encoding=”UTF-8″?>
<web-app version=”2.5″
xmlns=”http://java.sun.com/xml/ns/javaee”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=”http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd”>
<!– filter,listener,servlet,servlet-mapping等元素要在session-config之前 –>
<session-config>
<session-timeout>25</session-timeout></session-config>
</web-app>
通过在<session-config>元素中嵌入一个<session-timeout>子元素来设置会话的超时时间为25分钟,但是HttpSession.getMaxInactiverval()方法返回的是以秒为单位的,超时时间设置为25分钟,则HttpSession.getMaxInactiverval()方法返回的是1500秒。
除了在web.xml文件中配置会话超时间外,还可以为单个Servlet指定会话超时时间,它是通过在配置Servlet时,指定初始化参数决定,具体配置如下:
<servlet>
<servlet-name>…</servlet-name>
<servlet-class>…</servlet-class>
<init-param>
<param-name>timeout</param-name>
<param-value>600</param-value>
</init-param>
</servlet>
上述代码中,<servlet-name>元素和<servlet-class>元素在这里用…代替,在实际配置时,需要编写具体的参数值。在Servlet元素中嵌入了一个<init-param>子元素,在<init-param>子元素中指定一个初始化参数,名字是timeout,秒数是600秒,也就是10分钟,就可以把这个值传给session.setMaxInactiveInterval(int seconds)方法,然后设置会话的超时时间。 本文链接地址: jsp中如何配置单个Web应用的Session