这篇文章将为大家详细讲解有关利用servlet如何实现一个监听在线人数功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
创新互联-专业网站定制、快速模板网站建设、高性价比英山网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式英山网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖英山地区。费用合理售后完善,十载实体公司更值得信赖。具体内容如下
ServletContext事件监听器---->针对applicationScope
ServletContextListener(*)
对整个Web应用的装载和卸载进行监听。
ServletContextAttributeListener
对ServletContext中的信息存放、删除和替换进行监听。
ServletContext就是Servlet上下文监听,在web中表示的是对启动服务和销毁服务进行监听,需要实现的接口:
ServletContextListener接口,实现的就是对上下午进行监听:
void contextInitialized(ServletContextEvent sce):启动上下文时的监听
void contextDestroyed(ServletContextEvent sce):销毁上下文时进行的监听
除了对上下文的启动和销毁进行监听的之外,还可以对上下文的属性进行监听:ServletContextAttributeListener接口。
void attributeAdded(ServletContextAttributeEvent event):设置上下文属性监听
void attributeRemoved(ServletContextAttributeEvent event):移除上下文属性的监听
void attributeReplaced(ServletContextAttributeEvent event):修改上下文属性的监听
ServletContextAttributeEvent:事件,可以通过事件取得属性的内容和名称。
·取得属性名称:public java.lang.String getName()
·取得属性的值:public java.lang.Object getValue()
效果如下图:
当登录一个账号时
打开另一个浏览器,再登录一个账号
如上图,我们可以看到,程序已经完成了统计在线人数和显示人员列表的功能,那么他的实现流程是什么呢?
我们可以通过ServletContextListener完成在线人数的统计和显示在线人数列表,首先listener和filter一样要在web.xml中进行描述。
代码如下:
net.jvsun.ListenerTest