JavaWeb中怎么实现一个监听器,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
1. 监听器
实现一个监听器的接口;(有n种监听器)
1.1 编写一个监听器(实现监听器接口)
OnlineCountListener .java
package com.tian.listener;import javax.servlet.ServletContext;import javax.servlet.http.HttpSessionEvent;import javax.servlet.http.HttpSessionListener;//统计网站在线人数 : 统计sessionpublic class OnlineCountListener implements HttpSessionListener { //创建session监听: 看你的一举一动 //一旦创建Session就会触发一次这个事件! public void sessionCreated(HttpSessionEvent se) { ServletContext ctx = se.getSession().getServletContext(); System.out.println(se.getSession().getId()); Integer onlineCount = (Integer) ctx.getAttribute("OnlineCount"); if (onlineCount == null) { onlineCount = new Integer(1); } else { int count = onlineCount.intValue(); onlineCount = new Integer(count + 1); } ctx.setAttribute("OnlineCount", onlineCount); } //销毁session监听 //一旦销毁Session就会触发一次这个事件! public void sessionDestroyed(HttpSessionEvent se) { ServletContext ctx = se.getSession().getServletContext(); Integer onlineCount = (Integer) ctx.getAttribute("OnlineCount"); if (onlineCount == null) { onlineCount = new Integer(0); } else { int count = onlineCount.intValue(); onlineCount = new Integer(count - 1); } ctx.setAttribute("OnlineCount", onlineCount); } }
1.2 配置监听器
web.xml
<!--注册监听器--> <listener> <listener-class>com.tian.listener.OnlineCountListener</listener-class> </listener>
1.3 启动服务器
看完上述内容,你们掌握JavaWeb中怎么实现一个监听器的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!