`

struts2监听器session失效时的操作

阅读更多

public class LogoutListener implements HttpSessionAttributeListener {

private static final Log log = LogFactory.getLog(LogoutListener.class);

public void attributeAdded(HttpSessionBindingEvent event) {

log.info("add attribute to session");

System.out.println("add attribute to session");

}

 

public void attributeRemoved(HttpSessionBindingEvent event) {

   log.info("remove attribute from session");

   System.out.println("remove attribute from session");

   if (Constants.USER_KEY.equals(event.getName())) {

      User user = (User) event.getValue();

  if (user != null) {

  ApplicationContext ctx = WebApplicationContextUtils

         .getWebApplicationContext(event.getSession()

        .getServletContext());

      UserService userService = (UserService) ctx

.getBean("userServiceImpl");

//对用户进行操作,比如调用service的方法修改用户在线状态为不在线状态

}

}

}

}

public void attributeReplaced(HttpSessionBindingEvent event) {

/*log.info("replace attribute from session");

System.out.println("replace attribute from session");*/

}

}

分享到:
评论

相关推荐

    ajax请求Session失效问题

    然而,当涉及到用户会话(Session)管理时,AJAX请求可能会引发一些特殊的问题,特别是当Session失效时。本文将深入探讨这个主题,并提供解决方案。 Session是Web应用中用于跟踪用户状态的一种机制。它存储在服务器...

    完美解决ajax访问遇到Session失效的问题

    以下是一个简单的Struts2拦截器示例,用于处理Ajax请求和Session失效的情况: ```java public String intercept(ActionInvocation invocation) throws Exception { ActionContext ac = invocation....

    ssh框架的搭建的例子

    - 在`web.xml`中配置监听器`ContextLoaderListener`,使得Spring在Web应用启动时初始化ApplicationContext。 4. **集成Struts2**: - 将Struts2的jar包添加到`WEB-INF/lib`目录,特别是Struts2-Spring插件的jar包...

    javaweb网上淘书吧.rar

    session监听器则可以监控session的创建、失效等事件,实现自动登出功能。 6. **JSTL与EL表达式**:为了减少JSP页面中的Java代码,项目可能使用了JSTL(JavaServer Pages Standard Tag Library)标签库,如fmt、c、...

    JavaWeb期中考试

    7. **过滤器与监听器**:Filter在JavaWeb中用于拦截请求和响应,实现如权限验证、字符编码转换等功能。Listener则是监听Web应用中的特定事件,如用户登录、session失效等,以实现相应的处理。 8. **EJB与JMS**:...

    从零学Java Web PPT

    Listener则是监听特定事件的对象,例如Session监听器可监控会话的创建、失效等事件。 7. **JDBC(Java Database Connectivity)**: JDBC是Java平台的标准API,用于连接Java应用程序和各种类型的数据库。通过JDBC,...

    java面试题实践收集及答案详解

    session失效的几种情况 - **clearSession**:手动调用session的invalidate方法。 - **顺次注销**:用户正常退出系统。 - **timeout**:长时间无活动导致session过期。 - **在服务器重启后**:重启服务器会清空所有...

    Web.xml配置详解

    6. `listener`元素定义监听器,这些监听器在特定事件(如会话创建、销毁等)发生时被调用。 7. `servlet`元素用于注册Servlet,提供Servlet类的完整路径,并可以设置初始化参数。 8. `servlet-mapping`元素用于映射...

    深入Javaweb项目开发

    同时,会介绍会话的概念,如session对象的创建、设置属性、获取属性和失效,以及如何处理跨页面的数据共享。 5. **第五章:MVC模式与JSP自定义标签** MVC(Model-View-Controller)模式是JavaWeb开发中常用的设计...

    Spring-Reference_zh_CN(Spring中文参考手册)

    15.4. Struts 15.4.1. ContextLoaderPlugin 15.4.1.1. DelegatingRequestProcessor 15.4.1.2. DelegatingActionProxy 15.4.2. ActionSupport 类 15.5. Tapestry 15.5.1. 注入 Spring 托管的 beans 15.5.1.1. 将 ...

    portlet开发指南

    - 例如,当一个Portlet更新了数据时,其他相关的Portlet可以监听到这个事件并更新其显示的内容。 **支持的国际化:** - Portlet可以通过设置支持的语言和地区来实现国际化。 - 这样可以确保Portlet能够适应不同用户...

Global site tag (gtag.js) - Google Analytics