站点计数监听器的制作是新增的功能,在许多触发性的处理中需要使用此功能,通常用于用户对某一事件的触发监听,如监听用户的来访与退出、监听某一数据事件的发生,或者定义一个周期性的时钟定期执行。
CounterListener.java监听类代码如下:
package com.utils;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
public class CounterListener implements HttpSessionListener {
public static int count;
public CounterListener() {
count = 0;
}
@Override
public void sessionCreated(HttpSessionEvent arg0) {
count++;
}
@Override
public void sessionDestroyed(HttpSessionEvent arg0) {
if(count > 0) {
count--;
}
}
}
写入WebContent/WEB-INF/web.xml文件,配置监听器,代码如下:
<?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" >
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<listener>
<listener-class>com.utils.CounterListener</listener-class>
</listener>
</web-app>