📄 onlinecountlistener.java
字号:
package com.test;
import javax.servlet.http.*;
import javax.servlet.*;
public class OnLineCountListener implements HttpSessionListener,ServletContextListener,ServletContextAttributeListener
{
private int count;
private ServletContext context = null;
public OnLineCountListener()
{
count = 0;
//setContext();
}
//创建一个session时激发
public void sessionCreated(HttpSessionEvent se)
{
count++;
setContext(se);
}
//一个session失效时激发
public void sessionDestroyed(HttpSessionEvent se)
{
count--;
setContext(se);
}
//设置context的属性,它将激发attibuteReplaced或attibuteAdded方法
public void setContext(HttpSessionEvent se)
{
se.getSession().getServletContext().setAttribute("onLine",new Integer(count));
}
//增加一个新的属性时激发
public void attributeAdded(ServletContextAttributeEvent event)
{
log("attributeAdded("+event.getName()+"','"+event.getValue()+")");
}
//删除一个属性时激发
public void attributeRemoved(ServletContextAttributeEvent event)
{
log("attributeRemoved("+event.getName()+"','"+event.getValue()+")");
}
//替换一个属性时激发
public void attributeReplaced(ServletContextAttributeEvent event)
{
log("attributeReplaced("+event.getName()+"','"+event.getValue()+")");
}
//context删除时激发
public void contextDestroyed(ServletContextEvent event)
{
log("contextDestroyed()");
this.context = null;
}
//context初始化时激发
public void contextInitialized(ServletContextEvent event)
{
log("contextInitialized()");
this.context = event.getServletContext();
}
public void log(String message)
{
System.out.println("ContextListener:"+message);
}
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -