如题

解决方案 »

  1.   

    配置监听器,实现HttpSessionListener接口,session创建时会调用sessionCreated方法
      

  2.   

    javax.servlet.http.HttpSessionListener
      

  3.   

    你是想统计整个tomcat里面的session?
      

  4.   

    也可以用 全局的application啊
      

  5.   


    package web;import javax.servlet.ServletContext;
    import javax.servlet.http.HttpSession;
    import javax.servlet.http.HttpSessionEvent;
    import javax.servlet.http.HttpSessionListener;public class CountListener implements HttpSessionListener {
     private int count=0;
    public void sessionCreated(HttpSessionEvent arg0) {
    System.out.println("sessionCreated");
    count++;
    HttpSession session=arg0.getSession();
    ServletContext sctx=session.getServletContext();
    sctx.setAttribute("count", count);


    } public void sessionDestroyed(HttpSessionEvent arg0) {
    System.out.println("sessionDestroyed");
    count--;
    HttpSession session=arg0.getSession();
    ServletContext sctx=session.getServletContext();
    sctx.setAttribute("count", count);
    }}web.xml<listener>
    <listener-class>web.CountListener</listener-class>
    </listener>记得结贴哦
      

  6.   

    package com.test;import javax.servlet.http.HttpSessionEvent;
    import javax.servlet.http.HttpSessionListener;
    class SessionCountListener implements HttpSessionListener{
     public static long sessionCount=0;
      @Override
      public void sessionCreated(HttpSessionEvent arg0) {
        sessionCount++; 
      }  @Override
      public void sessionDestroyed(HttpSessionEvent arg0) {
        // TODO Auto-generated method stub
        
      }  
    }web.xml<listener>
        <listener-class>com.test.SessionCountListener</listener-class>
    </listener>调用:SessionCountListener.sessionCount
      

  7.   

    请问sessionDestroyed是什么时候被调用的。我发现浏览器关闭的时候并没用调用这个方法。
    难道要等超时自动关闭吗