1.转载别人的. 为了后面的注解
FilterDispatcher是struts2.0.x到2.1.2版本的核心过滤器.!
StrutsPrepareAndExecuteFilter是自2.1.3开始就替代了FilterDispatcher的.!
这样的改革当然是有好处的.!
为什么这么说.? 应该知道如果我们自己定义过滤器的话, 是要放在strtus2的过滤器之前的, 如果放在struts2过滤器之后,你自己的过滤器对action的过滤作用就废了,不会有效!除非你是访问jsp/html!
那我现在有需求, 我必须使用Action的环境,而又想在执行action之前拿filter做一些事, 用FilterDispatcher是做不到的.!
那么StrutsPrepareAndExecuteFilter可以把他拆分成StrutsPrepareFilter和StrutsExecuteFilter,可以在这两个过滤器之间加上我们自己的过滤器.!
给你打个比喻, 现在有病人要做手术, 现在struts2要做两件事, 搭病床(环境),执行手术.! 那么打麻药的工作呢.? 不可能要病人站着打吧, 所以必须有病床的环境,打完麻药之后再动手术!
补充点,在注解上,就相差很大。
分享到:
相关推荐
随着Struts 2的发展,`FilterDispatcher`在新版本中逐渐被`StrutsPrepareAndExecuteFilter`取代,后者整合了准备和执行两个阶段,提高了框架的效率。不过,在很多旧项目中,`FilterDispatcher`仍然是常见的一部分。 ...
这些核心类和接口定义了框架的运行机制,如`Action`接口、`ActionSupport`类、`.struts2-struts2-core.jar`包中的`FilterDispatcher`或`StrutsPrepareAndExecuteFilter`过滤器,它们负责拦截HTTP请求并将其转发给...
7. **FilterDispatcher(或StrutsPrepareAndExecuteFilter)**: 这是Struts2的前端控制器,负责接收HTTP请求,解析请求参数,并根据配置文件调度Action。 8. **Tiles2**: Struts2集成了Tiles2框架,用于构建复杂的...
- FilterDispatcher是Struts2早期版本的过滤器,负责拦截HTTP请求并将其分发给Struts2处理。 - StrutsPrepareAndExecuteFilter是新版本中的过滤器,结合了`FilterDispatcher`的准备和执行两个阶段,提高了性能和...
- Struts2的FilterDispatcher或StrutsPrepareAndExecuteFilter拦截请求。 - 框架解析请求并找到对应的Action配置,创建Action实例。 - 拦截器链执行,每个拦截器按顺序执行其逻辑。 - Action执行业务逻辑,返回...
请求到达时,由FilterDispatcher(或后来的StrutsPrepareAndExecuteFilter)拦截,然后通过OGNL(Object-Graph Navigation Language)表达式解析请求参数。ActionInvocation负责调用Action,执行完业务逻辑后,...
6. **过滤器配置**:Struts2的FilterDispatcher或者StrutsPrepareAndExecuteFilter是Struts2的核心过滤器,它们负责拦截HTTP请求并将其路由到Struts2的处理流程中。 7. **类型转换**:Struts2支持自动类型转换,...
2. **过滤器配置**:Struts2使用FilterDispatcher或StrutsPrepareAndExecuteFilter作为其核心过滤器。确保你的web.xml配置文件中已经包含了这些过滤器,并且允许FCKeditor的请求通过。FCKeditor的请求可能会被默认的...
在Struts2源码中,核心组件包括FilterDispatcher(或现在的StrutsPrepareAndExecuteFilter),它是Struts2框架的入口,负责拦截HTTP请求并分发到相应的Action。此外,Interceptor(拦截器)是Struts2的重要特性,它...
我们需要在项目的web.xml文件中配置Struts2的核心过滤器`org.apache.struts2.dispatcher.FilterDispatcher`或更现代的`org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter`。这个过滤器负责...
2. Struts2的Front Controller(`FilterDispatcher`或`StrutsPrepareAndExecuteFilter`)拦截请求。 3. 根据请求的URL和Action Mapping,找到对应的Action。 4. 拦截器链按顺序执行,完成预处理和业务逻辑。 5. ...
8. **过滤器配置**:在`web.xml`中,我们需要配置Struts2的前端控制器`FilterDispatcher`或`StrutsPrepareAndExecuteFilter`,以便拦截HTTP请求并将其交给Struts2处理。 9. **Action类和结果**:Action类是业务逻辑...
1. **配置Struts2**: 在`web.xml`中配置Struts2的前端控制器`FilterDispatcher`或`StrutsPrepareAndExecuteFilter`。 2. **创建Action类**: 创建一个Java类,该类扩展了`ActionSupport`类,并实现了一个返回...
- **FilterDispatcher**(或现在的`struts2-core.jar`中的`StrutsPrepareAndExecuteFilter`):Struts2的前端控制器,接收并处理所有HTTP请求。 - **ActionInvocation**:执行Action的上下文,管理Action的调用链...
- 接着,配置struts2的核心过滤器`struts2-convention-plugin`,在`web.xml`中指定`FilterDispatcher`或`StrutsPrepareAndExecuteFilter`,以确保所有请求都被Struts2拦截和处理。 2. **创建Action类**: - 创建...
具体步骤包括修改web.xml文件,将Struts2的Servlet类配置为org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter,而不是之前的org.apache.struts2.dispatcher.FilterDispatcher。 接下来,开发...
在这个例子中,web.xml会包含Struts2的过滤器配置,例如`org.apache.struts2.dispatcher.FilterDispatcher`或`org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter`。这些过滤器负责拦截HTTP...
在Struts2中,`FilterDispatcher`(在较新版本中被`StrutsPrepareAndExecuteFilter`取代)是核心过滤器,它负责将请求路由到合适的Action。 2. **全局变量(Global Variables)**:在Struts2中,全局变量通常是指在...
首先,入口点是`FilterDispatcher`或`StrutsPrepareAndExecuteFilter`,这两个过滤器负责拦截HTTP请求并将其导向Struts2的处理流程。接着,`ActionContext`保存了与当前请求相关的上下文信息,如参数、session等。而...
- 配置Struts2的过滤器(`org.apache.struts2.dispatcher.FilterDispatcher`或`org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter`,在Servlet 3.0以上的版本推荐使用后者)以拦截所有的HTTP...