java session 统计在线人数,监听session的创建和销毁

如果你想用session统计一个在线人数等功能的话,那么这篇文章你就看对了,可以监听session的创建和销毁,至于其他功能你就可以随意的去写了

session监听可以监听到session的创建和销毁等操作,如果需要去做在线人数统计,那么需要这两个就足够了。

创建session监听类

package com.sunjs.commons;
//                         _ooOoo_  
//                        o8888888o  
//                        88" . "88  
//                        (| -_- |)  
//                         O\ = /O  
//                     ____/`---'\____  
//                   .   ' \\| |// `.  
//                    / \\||| : |||// \  
//                  / _||||| -:- |||||- \  
//                    | | \\\ - /// | |  
//                  | \_| ''\---/'' | |  
//                   \ .-\__ `-` ___/-. /  
//                ___`. .' /--.--\ `. . __  
//             ."" '< `.___\_<|>_/___.' >'"".  
//            | | : `- \`.;`\ _ /`;.`/ - ` : | |  
//              \ \ `-. \_ __\ /__ _/ .-` / /  
//      ======`-.____`-.___\_____/___.-`____.-'======  
//                         `=---='  
//
//      .............................................  
//               佛祖保佑             永无BUG 
//       佛曰:  
//               写字楼里写字间,写字间里程序员;  
//               程序人员写程序,又拿程序换酒钱。  
//               酒醒只在网上坐,酒醉还来网下眠;  
//               酒醉酒醒日复日,网上网下年复年。  
//               但愿老死电脑间,不愿鞠躬老板前;  
//               奔驰宝马贵者趣,公交自行程序员。  
//               别人笑我忒疯癫,我笑自己命太贱;  
//               不见满街漂亮妹,哪个归得程序员? 

import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;

import org.apache.log4j.Logger;

/**
 * session 监听
 * @author sun
 */
public class SessionListener implements HttpSessionListener {
	
	protected static final Logger LOG = Logger.getLogger(SessionListener.class);

	@Override
	public void sessionCreated(HttpSessionEvent event) {
	    //创建session的时候可以监听到
	}
	
	@Override
	public void sessionDestroyed(HttpSessionEvent event) {
//		HttpSession session = event.getSession();
//		String sessionId = session.getId();
            //session销毁的时候可以监听到
	}

}

    web.xml 需要配置listener节点

    

<listener>
    <listener-class>com.sunjs.commons.SessionListener</listener-class>
</listener>

完成,此时session已经可以监听了。

如果你想做一个在线人数统计,那么只需要在创建和销毁的操作内存中的数据即可,redis、memcache或者系统内的map都可以。

我写了个简单的例子在我的个人博客


版权属于: 技术客

原文地址: https://www.sunjs.com/article/detail/48e3bd8faf42481bb21e80bba63b840d.html

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值