`

Struts2核心控制器的区别

阅读更多
FilterDispatcher是早期struts2的过滤器,后期的都用StrutsPrepareAndExecuteFilter了,如 2.1.6、2.1.8。StrutsPrepareAndExecuteFilter名字已经很能说明问题了,prepare与execute,前者表示准备,可以说是指filter中的init方法,即配制的导入;后者表示进行过滤,指doFilter方法,即将request请求,转发给对应的 action去处理。

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要做两件事, 搭病床(环境),执行手术.! 那么打麻药的工作呢.? 不可能要病人站着打吧, 所以必须有病床的环境,打完麻药之后再动手术.! 这个比喻非常形象了.!
分享到:
评论

相关推荐

    struts2核心技术整理

    4. **Interceptor(拦截器)**:拦截器是Struts2的核心特性之一,它允许在Action执行前后插入自定义逻辑。拦截器可以实现如日志记录、权限验证、数据校验等多种功能,并通过配置文件进行灵活组合。 5. **Value ...

    struts2核心文件

    7. **FilterDispatcher(或StrutsPrepareAndExecuteFilter)**: 这是Struts2的前端控制器,负责接收HTTP请求,解析请求参数,并根据配置文件调度Action。 8. **Tiles2**: Struts2集成了Tiles2框架,用于构建复杂的...

    struts2核心包

    标题中的"struts2核心包"指的是Struts2框架的基础组件,其中包括`struts2-core-2.0.14.jar`。这个版本号表示该框架是2.0.14版,这是一个较早的版本,但仍然广泛使用。`xwork-2.0.4.jar`是Struts2依赖的一个重要库,...

    一个Struts2的核心拦截器例子

    Struts2是一个强大的Java web应用程序框架,它提供了一种组织和构建MVC(模型-视图-控制器)架构的方式。核心拦截器是Struts2框架的重要组成部分,它们允许开发者在动作执行前后插入自定义逻辑,以实现如日志、权限...

    Struts2 核心jar包

    "Struts2核心jar包"是实现这一框架的基础,它包含了运行Struts2应用程序所必需的类库。 Struts2的核心jar包主要包括以下几个部分: 1. **Action**:这是Struts2的核心组件,负责处理用户请求。Action接口定义了...

    struts2核心包(保证好用)

    Struts2的主要目标是简化Java Web应用的开发,通过提供一套全面的控制器组件,使得开发者可以专注于业务逻辑而不是繁琐的HTTP请求处理。 2. **核心组件** - **Action类**:是业务逻辑的执行者,每个Action对应一个...

    Struts2核心包

    3. **拦截器(Interceptors)**:拦截器是Struts2的一大特色,它们按照预定义的顺序在Action执行前后运行,可以实现事务管理、权限控制、日志记录等功能。常见的拦截器有`PrepareInterceptor`、`...

    Struts2权限控制

    在Struts2中,拦截器扮演着至关重要的角色,它们是实现业务逻辑和控制流程的核心组件。本知识点主要聚焦于如何利用Struts2的拦截器进行权限控制。 **一、Struts2拦截器原理** 在Struts2中,拦截器是基于Java的动态...

    struts核心的jar(只是struts运行所需的核心jar)

    Struts 2的核心优势在于其灵活性和强大的扩展性,允许开发者通过插件机制和自定义拦截器来实现各种功能。然而,随着Spring MVC和其他轻量级框架的崛起,Struts 2在现代Web开发中的使用逐渐减少。尽管如此,对于理解...

    struts2核心jar包

    7. **FilterDispatcher**:这是Struts2的前端控制器,所有HTTP请求都会经过这个过滤器,然后根据配置转发到相应的Action。 在使用“struts2核心jar包”时,你需要将其加入到项目构建路径中,例如在Maven项目中添加...

    Struts2拦截器实现权限控制demo

    在Struts2的核心配置文件`struts.xml`中,我们可以定义拦截器链,指定哪些拦截器应用于哪些Action。 权限控制是web应用中不可或缺的一部分,它可以防止未经授权的用户访问特定资源。在Struts2中,我们可以通过拦截...

    struts2的核心jar包

    在Java EE环境中,Struts2作为控制器组件,提供了强大的动作调度、数据绑定、拦截器、结果类型等特性,极大地简化了开发流程。 Struts2的核心jar包是Struts2框架的基础,包含了实现框架功能的所有关键类和接口。...

    struts2核心包完整jar包

    3. **FilterDispatcher**(在较新版本中为`struts2-core.jar`内的`StrutsPrepareAndExecuteFilter`):作为Struts2的前端控制器,它是所有HTTP请求的入口点,负责调度请求到相应的Action。 4. **Interceptor拦截器*...

    Struts2 核心jar包源码

    Struts2的核心jar包是框架运行的基础,包含了处理请求、控制流程、数据绑定、异常处理等关键功能。源码分析对于理解其工作原理、进行定制化开发和优化性能具有重要意义。 首先,我们来看`xwork`,它是Struts2的核心...

    struts2控制器源码讲解

    本篇文章将深入讲解Struts2控制器的核心——`FilterDispatcher`类。 `FilterDispatcher`是Struts2的默认控制器,它是基于Servlet过滤器的实现。当一个HTTP请求到达web应用时,`FilterDispatcher`首先会被调用,通过...

    struts2中核心知识点(职场必备)

    请求从客户端发送,经过Web服务器解析配置,通过核心控制器`strutsPreparedAndExecuteFilter`,然后经过一系列拦截器处理,到达Action,Action执行后返回一个结果,再经过拦截器链,最后由核心控制器决定返回相应的...

    struts2JAR包

    Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,...

    struts01:描述一下ssh整体、struts核心控制器

    在Struts 2中,核心控制器组件被称为FilterDispatcher。与Struts 1的ActionServlet不同,FilterDispatcher是一个Servlet过滤器,而不是一个Servlet。这个改变使得Struts 2可以更好地与其他Web框架集成,因为它可以在...

Global site tag (gtag.js) - Google Analytics