javaweb之jsp---------------监听器实现在线人数

1.配置监听器

package listener;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;

public class OnlineListener implements HttpSessionListener {
    
    


    @Override
    public void sessionCreated(HttpSessionEvent se) {
    
    
        ServletContext sc = se.getSession().getServletContext();
        Integer onlineCount = (Integer) sc.getAttribute("OnlineCount");

        if (onlineCount==null){
    
    

            onlineCount=-1;

        }else{
    
    

            onlineCount+=1;

        }

        sc.setAttribute("OnlineCount",onlineCount);

    }


    @Override
    public void sessionDestroyed(HttpSessionEvent se) {
    
    

        ServletContext sc = se.getSession().getServletContext();
        Integer onlineCount = (Integer) sc.getAttribute("OnlineCount");


        if (onlineCount==null){
    
    
            onlineCount=0;
        }else{
    
    
            onlineCount=onlineCount-1;
        }


        sc.setAttribute("OnlineCount",onlineCount);


    }
}

2.配置web.xml

<listener>
    <listener-class>listener.OnlineListener</listener-class>
  </listener>

3.配置jsp

<h2>当前在线人数:
<%=pageContext.getSession().getServletContext().getAttribute("OnlineCount")%>

</h2>

猜你喜欢

转载自blog.csdn.net/qq_42794826/article/details/113873582