`
koudailidexiaolong
  • 浏览: 96085 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

web 中关于清除session会话 中保存的对象的时候 执行删除语句操作

 
阅读更多

web 程序中删除当前用户的一系列操作在session失效之前执行

需要创建一个sessionLisenter 监听类 来监听当前客户端的session

package com.zlkj.pub;

import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSessionEvent; import javax.servlet.http.HttpSessionListener;

import org.springframework.web.context.WebApplicationContext; import org.springframework.web.context.support.WebApplicationContextUtils;

import com.zlkj.dagl.bean.DrvVerifyTempInfo; import com.zlkj.dagl.bean.VehVerifyTempInfo; import com.zlkj.dagl.services.AmendArchivesService; import com.zlkj.dagl.services.VerifyArchivesService; import com.zlkj.frmwork.bean.UserSession; import com.zlkj.pub.database.ExcuteResult;

public class SessionListener implements HttpSessionListener{ /** * 执行创建 */ public void sessionCreated(HttpSessionEvent arg0) { // TODO Auto-generated method stub System.out.println("=======================狼来了!!!!"); } /** * 执行销毁 */ public void sessionDestroyed(HttpSessionEvent httpSessionEvent) { // TODO Auto-generated method stub //得取Session // ServletContext servletContext = httpSessionEvent.getSession().getServletContext(); HttpSession servletContext = httpSessionEvent.getSession(); UserSession userSession = (UserSession) servletContext.getAttribute("userSession"); synchronized (this) { System.out.println("用户是"+userSession); if(userSession != null && !"".equals(userSession)){ String yhdh = userSession.getUser().getYhdh(); //System.err.println("sessionId="+yhdh); //获取applicationContext上下文 WebApplicationContext webApplicationContext= WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext.getServletContext()); //获取审核 VerifyArchivesService verifyArchivesService = (VerifyArchivesService) webApplicationContext.getBean("verifyArchivesService"); ExcuteResult resultDrv = verifyArchivesService.deleteAllObjectVerifyTempInfo(new DrvVerifyTempInfo("",yhdh), "drvVerifyTempInfo"); ExcuteResult resultVeh = verifyArchivesService.deleteAllObjectVerifyTempInfo(new VehVerifyTempInfo("",yhdh), "vehVerifyTempInfo"); } } }

}


web.xml中的配置需要配置的监听

<!-- session失效监听 --> <listener> <listener-class> com.zlkj.pub.SessionListener </listener-class> </listener>

<!--设置失效时间 --> <session-config> <session-timeout>1</session-timeout> </session-config>


绝对可以的 本人亲试了呵呵!希望您能用上哈<wbr></wbr>

分享到:
评论

相关推荐

    framemarker页面基本常用标签

    3. **`Session`对象**:在`framemarker`中,`Session`对象代表了服务器端的会话。它可以存储任意类型的数据,如用户信息、购物车内容等。在Java Web应用中,`HttpSession`接口是常用的会话管理对象,可以通过`...

    jsp实验报告7-基于session的访问控制

    另外,我们需要提供一个登出功能,清除Session中的用户信息。 ```jsp &lt;% session.setMaxInactiveInterval(3600); // 设置1小时后Session过期 %&gt; 登出 // logout.jsp session.removeAttribute("currentUser"); ...

    .Net实现在线人数统计和对数据库中表的操作

    本项目聚焦于在线人数统计以及对数据库中表的CRUD(创建、读取、更新、删除)操作,这些都是Web开发中的核心功能。 首先,我们要理解在线人数统计的基本原理。在Asp.Net中,可以通过跟踪会话(Session)或Cookie来...

    ASP.NET2.0数据库连接.doc

    Session 对象主要作用是网页计数、在 web 页面中传递数据。Session 语法格式: * 赋值:Session(“键名”)=值; * 取值:变量= Session(“键名”) 或 变量= Session.Item(“键名”)。 * 清除值:Session.Remove(...

    用servlet,jsp,cookie,session等机制。复刻老杜的项目,yyds,自己的第一个小而简单的项目

    开发者可能使用PreparedStatement对象执行SQL语句,实现对数据的增删改查操作。 4. **Session**: Session是Web应用程序中的一种会话管理技术,用于在多个请求之间保持用户的上下文信息。在这个项目中,当用户成功...

    java web简单的通讯录系统

    这个SQL脚本包含了创建表结构、初始化数据或者执行其他数据库操作的语句。通常,数据库表会包含字段如姓名、电话、邮箱等,以便存储联系人的详细信息。 2. Servlet与JSP:Java Web应用中,Servlet是服务器端的Java...

    hibernate学习文档

    3. Session:会话对象,提供了与数据库交互的主要接口,负责持久化操作,如保存、更新、删除和查询对象。 4. Transaction:事务管理,处理数据库的ACID属性,确保数据的一致性。 5. Query和Criteria:提供SQL语句的...

    成都理工大学web实习报告知识.pdf

    1) Session 和 Application:在Web开发中,Session和Application都是用来在用户会话之间存储数据的机制。Session用于存储特定用户的数据,当用户关闭浏览器时结束;而Application则存储全局信息,可供所有用户共享,...

    php实现的SESSION类

    会话(Session)是Web开发中非常重要的一个概念,它能够帮助开发者存储用户特定信息,并且在整个用户访问过程中保持这些信息。在无状态的HTTP协议中,会话管理是通过在服务器端生成唯一的标识符(通常是一个会话ID)...

    中软国际jsp实现网站登陆、注销实例

    在Java Web中,会话管理通常使用session对象。注销时,将session中的用户标识或登录状态设置为null,从而结束用户会话。 【JDBC】JDBC是Java访问数据库的标准接口,提供了连接数据库、执行SQL语句、处理结果集等...

    Django项目开发中cookies和session的常用操作分析

    Django框架在Python Web开发中应用广泛,尤其在处理用户身份验证、持久化用户会话等方面提供了便捷的工具,主要通过cookies和session机制来实现。在Django中,cookies和session的操作是项目开发中不可或缺的技能。...

    Django中使用session保持用户登陆连接的例子

    Django提供了一些内置的方法来保证session的安全性,例如在用户登录时生成安全的session key,并在用户登出时清除session数据。此外,还可以对session数据的过期时间进行设置,以防止用户的会话被无限期保存。 知识...

    简单Servlet登录注册增删查改项目,可运行

    在这个项目中,JDBC被用来建立与数据库的连接,执行查询、插入、更新和删除等操作。通常涉及步骤包括加载驱动、建立连接、创建Statement或PreparedStatement对象、执行SQL语句和处理结果集。 `Session`是HTTP协议无...

    HttpSession的使用

    每个`HttpSession`都有一个生命周期,当用户关闭浏览器、手动清除session或者服务器达到预设的超时时,session会失效。默认情况下,session的超时时间为30分钟,但可以通过在web.xml配置文件中设置`&lt;session-config&gt;...

    web课程设计-个人信息增删改查.docx

    3.4 退出:用户在任何时候都可以选择退出系统,清除会话,结束当前登录状态。 总结,这个Web课程设计着重于构建一个实用的个人信息管理系统,通过JSP技术和数据库访问技术实现增删改查功能,配合B/S架构提供友好的...

    Struts2 Spring Hibernate

    它通过ORM(对象关系映射)技术,将Java对象与数据库表进行映射,使得开发者能以面向对象的方式来处理数据库操作,而无需关注底层SQL语句。在这个小程序中,Hibernate可能被用来创建、查询、更新和删除数据库中的...

    javaWeb通过jsp实现增删改查

    至于“退出登录”,只需清除session中的用户信息,或者设置session失效,就可以使用户返回未登录状态。在JSP中,可以使用session.invalidate()方法来实现这一点。 最后,"通过模态窗实现登录修改"是指在网页上弹出...

    jsp Hibernate批量更新和批量删除处理代码

    直接使用JDBC API进行批量更新和删除操作时,需要通过Hibernate的`Session`对象获取底层的数据库连接(`Connection`),然后创建`PreparedStatement`对象执行SQL语句。虽然这样做可以直接操作数据库,提高了操作的...

    用JSP和数据库做的购物车的源程序

    2. **SQL语句构造**:根据不同的操作(如添加、清除、删除商品),构造相应的SQL语句。 3. **执行SQL**:使用`bka.executeQuery(sql)`执行SQL语句,其中`bka`是一个预定义的`shop.bka`类的实例,用于执行数据库操作...

    hibetnate+struts2做的登录注册增删改查

    开发者只需定义实体类,配置Hibernate的映射文件(如.hbm.xml),并使用SessionFactory创建Session,通过Session执行CRUD操作。 Struts2是Action-based MVC(Model-View-Controller)框架,它负责处理HTTP请求,...

Global site tag (gtag.js) - Google Analytics