SpringBoot实现在线用户数统计功能

@RestController
//第一步:实现HttpSessionListener接口
public class CalculatorController implements HttpSessionListener {
    public static List list = new ArrayList();
    //用户登陆成功
    @Override
    public void sessionCreated(HttpSessionEvent se) {
        String id = se.getSession().getId();
        list.add(id);
    }
	//用户退出登陆从数组里移除
    @Override
    public void sessionDestroyed(HttpSessionEvent se) {
        String id = se.getSession().getId();
        list.remove(id);
    }
    第二步:添加session创建方法
    @RequestMapping(path = "/write")
    public String write(HttpSession session){
        session.setAttribute("name","123");
        //设置过期时间,测试destory方法用到
        session.setMaxInactiveInterval(5);
        return "写入session";
    }
    第三步:输出统计个数
    @RequestMapping(path = "/count")
    public int count(){
        return list.size();
    }
}

你可能感兴趣的:(后端)