与拦截器差不多~配置→写类√两步解决~_(:зゝ∠)_,~这是一个统计在线人数的小测试~
web.xml中配置listener标签,用自定义的监听类替换掉原先的~session-config标签中设置session的超时时间
web.xml:
<listener> <!-- <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> --> <listener-class>com.web.listener.CountLineListener</listener-class> </listener> <!-- 设置session超时时间 --> <session-config> <session-timeout>60</session-timeout> </session-config>
CountLineListener.java:
package com.web.listener; import java.text.SimpleDateFormat; import javax.servlet.ServletContext; import javax.servlet.http.HttpSessionEvent; import javax.servlet.http.HttpSessionListener; import org.springframework.web.context.ContextLoaderListener; /** * 监听器 * @author Administrator * */ public class CountLineListener extends ContextLoaderListener implements HttpSessionListener{ public CountLineListener() { super(); } public void sessionCreated(HttpSessionEvent se) { System.out.println("创建session......"); ServletContext context = se.getSession().getServletContext(); Integer count = (Integer)context.getAttribute("count"); if(count == null){ count = new Integer(1); }else{ int co = count.intValue( ); count= new Integer(co+1); } System.out.println(new SimpleDateFormat("HH:mm:ss").format(System.currentTimeMillis())+" 当前用户人数:"+count); context.setAttribute("count", count);//保存人数 } public void sessionDestroyed(HttpSessionEvent se) { System.out.println("销毁session......"); ServletContext context = se.getSession().getServletContext(); Integer count = (Integer)context.getAttribute("count"); int co = 0; if(count != null)count.intValue(); count = new Integer(co - 1); context.setAttribute("count", count); System.out.println(new SimpleDateFormat("HH:mm:ss").format(System.currentTimeMillis())+" 当前用户人数:"+count); } }
session创建时会调用sessionCreated(HttpSessionEvent se)方法,销毁时调用sessionDestroyed(HttpSessionEvent se)方法,用不同浏览器测试√:
相关推荐
在Struts2中,监听器是用于监控特定事件并执行相应操作的重要组件。下面我们将深入探讨Struts2监听器的使用及其在实际开发中的作用。 首先,了解监听器在Web应用中的基本概念。监听器是Servlet容器(如Tomcat)中的...
默认登录页面 http://localhost:8080/Struts_ljq ...登录成功页面有add,delete,modify方法,配置有不同拦截,在后台看拦截信息。...有全局拦截器配置和方法拦截,及监听器简单运用, 仅新手学习demo
### STRUTS:Listener监听器详解 #### 一、引言 在Java Web开发中,监听器(Listener)是十分重要的组成部分,它们主要用于监听特定事件的发生,并执行相应的处理逻辑。Struts框架作为早期流行的MVC架构之一,充分...
这通常涉及到修改服务器的配置文件(如Tomcat的`server.xml`),添加一个监听443端口的SSL连接器。你需要提供一个有效的SSL证书,这可以是自签名证书或者由权威证书颁发机构签发的证书。 ```xml SSLEnabled=...
在"Struts2 拦截结果监听器(三十)"这个主题中,我们将深入探讨Struts2的拦截器机制,特别是与拦截结果相关的监听器。 拦截器是Struts2的核心组件,它们按照预定义的顺序组成一个拦截器栈,每个拦截器在处理请求时...
2. **配置web.xml**:在项目的`web.xml`文件中,我们需要配置CAS过滤器和监听器,它们负责拦截请求,处理CAS的票据验证。过滤器会检查用户是否已经通过CAS验证,如果没有,则重定向到CAS服务器的登录页面。 3. **...
本教程将逐步引导你了解并实践这些核心概念,从创建第一个Struts2项目,到配置Action、编写拦截器、处理表单提交、实现文件上传,再到利用Tiles进行页面布局,一步步深化对Struts2的理解。无论你是初学者还是有经验...
在Struts2配置文件(struts.xml)中,你需要将自定义的监听器添加到Action或全局拦截器栈中: ```xml <package name="default" namespace="/" extends="struts-default"> <!-- 添加自定义预结果监听器 --> ...
该属性用于指定加载Struts 2配置文件的配置文件管理器,默认值为`org.apache.struts2.config.DefaultConfiguration`,这是Struts 2默认的配置文件管理器。若需要实现自定义的配置管理器,则需创建一个实现了`...
这是每个Java Web应用的标准部署描述符,用于配置应用程序的基本设置,比如Servlet、过滤器和监听器。在Struts2中,`web.xml`通常会包含Struts2的前端控制器Servlet,即`org.apache.struts2.dispatcher.ng.filter....
4. **配置web.xml**:这是Servlet容器的配置文件,需要配置Struts2的过滤器和监听器。 5. **编写Action类**:Action类是业务逻辑的入口点,继承自Struts2的ActionSupport类。 6. **创建配置文件**:编写struts.xml...
Spring Web模块包含了Servlet监听器、过滤器、DispatcherServlet等核心组件,它们协同工作以接收请求、解析请求参数、执行业务逻辑并返回响应。此外,Spring还提供了事务管理、数据访问/集成、AOP等功能,极大地增强...
查看官方文档,确认并更新任何必要的配置元素,如过滤器和监听器。 **6. 更新Struts配置** 检查所有的`.struts.xml`配置文件,确保它们与新版本兼容。可能需要更新或删除不再支持的配置选项。 **7. 修复动作类和...
配置包括定义Flex的上下文监听器、消息代理Servlet等,这些都是Flex与Struts2之间通信的关键组件。 #### 三、深入理解整合原理 整合Flex与Struts2不仅仅是在项目中简单地添加几个库或配置文件。更重要的是理解两者...
在`web.xml`中,我们注册了`StrutsTilesListener`监听器,并配置了tiles容器的定义位置。这是tiles插件能够正确解析和应用布局的关键所在。 #### 3.4 struts.xml配置 最后,在`struts.xml`中,我们定义了一个名为...
为了确保项目能够成功运行,开发者需要正确地配置这些jar包,包括将它们添加到构建路径、设置web.xml中的过滤器和监听器,以及可能需要的额外配置文件如struts.xml。同时,了解每个jar包的功能和用途,可以帮助...
2. `web.xml`:这是Servlet容器的部署描述符,用于配置过滤器和监听器。在Struts2中,你需要配置`StrutsPrepareAndExecuteFilter`来拦截HTTP请求并交给Struts2框架处理。 在实际开发中,可能还需要根据需求添加其他...
Struts2整合FileUpload是Java Web开发中常见的一项任务,它允许用户在应用程序中上传文件。Struts2是一个强大的MVC框架,而FileUpload则是一个处理文件上传的库,通常与Struts2结合使用,以提供更完善的文件上传功能...
Struts2是一个强大的MVC(模型-视图-控制器)框架,它在Java Web开发中广泛应用。拦截器是Struts2框架的核心特性之一,能够帮助开发者实现诸如日志记录、性能监控、事务管理以及权限控制等多种功能。在这个场景中,...
此外,还需要配置监听器(Listener)来加载Struts2的配置文件。 - **配置示例**: ```xml <filter-name>struts2 <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter ...