SessionListener失败,退出
2024-09-21 21:00:56
配置如下:
web.xml:
<listener>
<listener-class>cn.edu.hbcf.common.listener.SessionListener</listener-class>
</listener>
java类:
SessionListener.java
package cn.edu.hbcf.common.listener; import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener; import cn.edu.hbcf.common.constants.WebConstants;
import cn.edu.hbcf.common.springmvc.SpringContextHolder;
import cn.edu.hbcf.privilege.dao.BaseUserLogMapper;
import cn.edu.hbcf.privilege.pojo.BaseUserLog;
import cn.edu.hbcf.privilege.pojo.BaseUsers; public class SessionListener implements HttpSessionListener { @Override
public void sessionCreated(HttpSessionEvent arg0) {}
@Override
public void sessionDestroyed(HttpSessionEvent arg0) {
HttpSession session = arg0.getSession();
BaseUsers user = (BaseUsers)session.getAttribute(WebConstants.CURRENT_USER);
String name=user.getAccount();
if(name!=null && name.length()>0){//session失效时候移除记录
if(SessionAttributeListener.sessionMap.containsKey(name)){
BaseUserLogMapper baseUserLogMapper = SpringContextHolder.getBean("baseUserLogMapper");
BaseUserLog log = new BaseUserLog();
log.setLogType(2);
log.setUser(user);
log.setDescription("退出成功");
baseUserLogMapper.insert(log);
SessionAttributeListener.sessionMap.remove(name);
}
}
} }
最新文章
- ecshop数据表说明
- JAVA 8 Lambda表达式-Lambda Expressions
- k-d tree 学习笔记
- ubuntu 16.04 apt-get error: in the drive /media/cdrom and press
- oracle的内置函数
- Simple Shopping Cart By AngularJS
- visualC/C++连接MySql数据库
- Java_eclipse软件与git配合使用创建git仓库
- ASPxGridView-如何在客户端缓存数据
- UI 响应者链
- 关于AngularJS的分享
- 201521123050 《Java程序设计》第12周学习总结
- linux C 刚初始化后的一个变量在调用一个静态库中函数后被异常修改为乱码
- torch.view()详解及-1参数是什么意思
- IP通信基础课堂笔记----简答题
- Centos7.X通过rpm包安装Docker
- Python2.7-collections
- 用多个class选择元素
- spotlight
- 基础篇:4.1)规范化:3d工程图纸出图步骤详解