Spring boot通过HttpSessionListener监听器统计在线人数的实现代码
2018-02-07 11:24
1921 查看
首先说下,这个统计在线人数有个缺陷,一个人在线可以同时拥有多个session,导致统计有一定的不准确行。
接下来,开始代码的编写,
第一步:实现HttpSessionListener中的方法,加上注解@WebListener
@WebListener public class SessionListener implements HttpSessionListener{ public void sessionCreated(HttpSessionEvent arg0) { // TODO Auto-generated method stub ServletContext context = arg0.getSession().getServletContext(); if (context.getAttribute("count")==null) { context.setAttribute("count", 0); }else { int count = (Integer) context.getAttribute("count"); context.setAttribute("count", count+1); } } public void sessionDestroyed(HttpSessionEvent arg0) { // TODO Auto-generated method stub ServletContext context = arg0.getSession().getServletContext(); if (context.getAttribute("count")==null) { context.setAttribute("count", 0); }else { int count = (Integer) context.getAttribute("count"); if (count<1) { count = 1; } context.setAttribute("count", count-1); } HttpSession session = arg0.getSession(); String name = (String) session.getAttribute("name"); HashSet<String> nameSet = (HashSet<String>) context.getAttribute("nameSet"); nameSet.remove(name); } }
第二步:控制创建session放入对象
HttpSession session = request.getSession(); session.setAttribute("name", name); Object count = context.getAttribute("count"); if (count==null) { count = 0; }
第三步:启动类加上注解@ServletComponentScan,这样才能扫描到监听器
说明,此代码适用于spring-boot开发
简单说下,javaWeb中配置监听器在web.xml中加上
<listener> <listener-class>zjq.listener.SessionListener</listener-class> </listener>
总结
以上所述是小编给大家介绍的Spring boot通过HttpSessionListener监听器统计在线人数的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
相关文章推荐
- java程序利用HttpSessionListener实现统计在线人数(示例代码)
- php+memcache实现的网站在线人数统计代码
- Asp.net实现在线人数统计功能代码实例
- php+memcache实现的网站在线人数统计代码
- 通过监听器实现在线人数统计
- Asp.net实现在线人数统计功能代码实例
- 用filter解决汉字编码及禁止页面缓存 和 用listener实现在线人数统计
- 利用文件属性结合Session实现在线人数统计
- 如何使用Servlet监听器实现网站在线人数统计
- 简单的java web 统计在线人数实现方法
- 利用HttpSessionListener实现网站在线人数统计功能
- 利用HttpSessionListener实现网站在线人数统计功能[摘]
- PHP实现统计在线人数功能示例
- servlet+java+jsp实现在线人数的统计
- 用filter解决汉字编码及禁止页面缓存 和 用listener实现在线人数统计
- jsp实用两例:用filter解决汉字编码及禁止页面缓存 和 用listener实现在线人数统计.
- 用HttpSessionListener与HttpSessionBindingListener实现在线人数统计
- 利用HttpSessionListener实现网站在线人数统计功能
- 用HttpSessionListener与HttpSessionBindingListener实现在线人数统计
- 用HttpSessionListener与HttpSessionBindingListener实现在线人数统计