鍍金池/ 問答/Java  C  Linux  HTML/ HttpSession事件監(jiān)聽器的sessionCreated不被執(zhí)行

HttpSession事件監(jiān)聽器的sessionCreated不被執(zhí)行

項(xiàng)目中需要統(tǒng)計(jì)在線用戶數(shù),用了HttpSessionListener,LoginController調(diào)用request.getSession(),HttpSessionListener事件監(jiān)聽器的sessionCreated不執(zhí)行。

相關(guān)代碼

@WebListener
public class SessionListener  implements HttpSessionListener, HttpSessionAttributeListener {

    public static final Logger logger = LoggerFactory.getLogger(SessionListener.class);

    /**
     * 記錄session的數(shù)量
     */
    public int count = 0;

    public SessionListener(){

        logger.info("SessionListener......");
    }

    @Override
    public void sessionCreated(HttpSessionEvent httpSessionEvent) {
        logger.info("===============sessionCreated===============");
        System.out.println("【HttpSessionListener監(jiān)聽器】count++  增加");
        count++;
        httpSessionEvent.getSession().getServletContext().setAttribute("count", count);
    }

    @Override
    public void sessionDestroyed(HttpSessionEvent httpSessionEvent) {
        logger.info("===============sessionDestroyed===============");
        System.out.println("【HttpSessionListener監(jiān)聽器】count--  減少");
        count--;
        httpSessionEvent.getSession().getServletContext().setAttribute("count", count);

    }

    @Override
    public void attributeAdded(HttpSessionBindingEvent httpSessionBindingEvent) {
        System.out.println("1111111111111111111111111111");
    }

    @Override
    public void attributeRemoved(HttpSessionBindingEvent httpSessionBindingEvent) {
        System.out.println("222222222222222222222222222222");
    }

    @Override
    public void attributeReplaced(HttpSessionBindingEvent httpSessionBindingEvent) {
        System.out.println("333333333333333333333333333333333");
    }

項(xiàng)目啟動(dòng)時(shí),有打印SessionListener......,說明已經(jīng)監(jiān)聽類已經(jīng)初始化,有調(diào)用到監(jiān)聽。

回答
編輯回答
幼梔

打印SessionListener...... 只能說明這個(gè)監(jiān)聽器被spring容器歸納,因?yàn)槟氵@句是在構(gòu)造函數(shù)里。
除了寫一個(gè)@WebListener的類之后。還需要configuration配置這個(gè)監(jiān)控器

2017年9月3日 18:18