web.xml中
  <session-config>
    <session-timeout>300</session-timeout>
  </session-config>
在运行期间会根据配置文件的Session超时时间定时对超时的Session进行清理。 

解决方案 »

  1.   

    要检验Session的页面加上下面的话,或者到Filter里
    推荐用Filter,这样就可以省掉很多重复的代码
    if (session.getAttribute(yourSessionName) == null) {
      //redirect to login page
    }
      

  2.   

    web.xml  <listener>
        <listener-class>nona.base.server.UserSessionListener</listener-class>
      </listener>
    ==================package nona.base.server;
    import java.util.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import org.apache.commons.logging.*;public class UserSessionListener implements HttpSessionListener{
      private static Log log = LogFactory.getLog(UserSessionListener.class);  public void sessionCreated(HttpSessionEvent evt) {
        log.info("new Session created");
        initSession(evt.getSession());
      }  private void initSession(HttpSession session) {
        SessionHelper.increaseCount();
      }  public void sessionDestroyed(HttpSessionEvent evt) {
        SessionHelper.decreaseCount();
        log.info("one Session destroyed");
      }}
      

  3.   

    上面的代码忘记修改了,用这个import java.util.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import org.apache.commons.logging.*;public class UserSessionListener implements HttpSessionListener{
      private static Log log = LogFactory.getLog(UserSessionListener.class);  public void sessionCreated(HttpSessionEvent evt) {
        log.info("new Session created");
      }  public void sessionDestroyed(HttpSessionEvent evt) {
        log.info("one Session destroyed");
      }}
      

  4.   

    我用的是
    <session-config>
        <session-timeout>300</session-timeout>
    </session-config>但前辈的更x一些诶