存在这样一种情况,即使项目的web.xml里面配置了HttpSession的监听器,但是像访问下面的方法,并没有触发。
原因分析:访问这个方法其实并没有创建session,所以根本无法触发HttpSession的监听。
需要下面这样子写才会触发监听:
下面这样子写了之后,sessionID会返回给浏览器,下面浏览器又来访问这个地址时候,会携带JSESSIONID来,代码里面的request.getSession()方法根据携带过来的JSESSIONID可以查到对应的session,
所以这次访问,虽然代码有执行到
HttpSession session=request.getSession();但是并没有创建session,所以这次是不会触发session监听的。
所以:一个用户登录成功后,无论访问页面多少次,session只有对应的一个。