监听器开发步骤
实现监听器接口,重写方法
package com.qing.listener;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
public class OnlineCountListener implements HttpSessionListener {
public void sessionCreated(HttpSessionEvent se) {
System.out.println("sessionId: " + se.getSession().getId());
ServletContext sc = se.getSession().getServletContext();
Integer onlineCount = (Integer) sc.getAttribute("onlineCount");
if (onlineCount == null) {
onlineCount = 1;
} else {
onlineCount += 1;
}
sc.setAttribute("onlineCount",onlineCount);
}
public void sessionDestroyed(HttpSessionEvent se) {
ServletContext sc = se.getSession().getServletContext();
Integer onlineCount = (Integer) sc.getAttribute("onlineCount");
if (onlineCount == null) {
onlineCount = 0;
} else {
onlineCount -= 1;
}
sc.setAttribute("onlineCount",onlineCount);
}
}
web.xml中配置监听器
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<listener>
<listener-class>com.qing.listener.OnlineCountListener</listener-class>
</listener>
<session-config>
<session-timeout>1</session-timeout>
</session-config>
</web-app>
原文:https://www.cnblogs.com/wl3pb/p/14646807.html