本文在springboot 的项目,用HttpSessionListener 监听器(监听器的其中一种) 统计在线人数,实质是统计session 的数量。
思路很简单,但是有个细节没处理好,让我调试了大半天,才把bug搞好。
先写个HttpSessionListener 监听器。count 是session的数量(人数),session 创建的时候,会触发监听器的sessionCreated 方法,session销毁的时候,会触发监听器的sessionDestroyed 方法。 在监听器中计算完人数count,把他放进servletContext(可以理解为一个仓库,任意请求可以存储和获取里面的属性)。
注意监听器加上@WebListener,这样就不用配置。
@WebListener
public class OnLineCount implements HttpSessionListener {
public int count=0;//记录session的数量
//监听

本文介绍如何在SpringBoot项目中利用HttpSessionListener监听器统计在线人数,通过监听session的创建和销毁来更新计数。在监听器中维护session数量并存储到servletContext,同时指出了在controller查询session数量时的常见错误及其解决方案,包括前端销毁session和保存sessionId以避免重复创建session的问题。
最低0.47元/天 解锁文章
2768

被折叠的 条评论
为什么被折叠?



