这段时间学习了一下webwork2,觉得此框架设计的满轻量的,它是在Xwork这个命令框架的基础上进行了web的MVC的封装。其中可以看到很多j2ee的模式:比如前端控制器,过滤器(在webwork中是拦截器interceptor),context对象等。下面具体来总结一下:
首先来看看web.xml文件,此文件里配置了web应用程序一些必要的配置。其中最重要的就是将所有的action都映射到ServletDispatcher这个类,此类其实就是一个前端控制器,当它接受到一个请求后,它会遍历HttpServletRequest,HttpSession,ServletContext里的数据,并把它们复制到webwork专用的map中,从此所有的操作都是基于这些webwork专门的map的,从而与servlet api进行了解耦,有利与测试,方便维护。其实仔细想象,webwork的工作其实就是将一些web有关的数据结构进行重组,从而使得xwork能够识别它们,并接手处理,所以webwork就是一个数据转换器。
其次来看看xwork.xml,顾名思义,此文件是用来配置xwork框架的,它里面针对每个action可以映射它需要的interceptor,执行结果的映射等重要信息。下面来看看xwok具体是怎么执行action的,首先xwork需要创建action的代理:ActionProxy,而此代理是通过ActionProxyFactory的缺省实现类DefaultActionProxyFacory创建的,好了,现在创建好了action的代理了,下面怎么作呢?其实ActionProxy把调度任务交给了ActionInvocation,此类有个默认实现类DefaultActionInvocation,正是此类实现了Action的调度。其实ActionInvocation起的作用就和过滤器模式中过滤器链的作用一样,它负责Action对应的拦截器的调度,使得拦截起之间不需要彼此之间耦合,所有的拦截器都只和ActionInvocation打交道(调用AcionInvocation的invoke()方法)。
分享到:
相关推荐
本学习笔记将深入探讨WebWork2的核心概念、主要特性以及如何在实际项目中应用。 首先,WebWork2的核心是Action,它是处理用户请求的中心组件。Action类负责接收HTTP请求,执行业务逻辑,并通过Result将处理结果返回...
以下是对Webwork2框架的学习总结: 1. **JAR包下载与项目配置**: - 开始学习Webwork2时,首先需要下载对应的JAR包,例如webwork-2.2.6.2版本。 - 将下载的JAR包放入项目中的LIB目录,包括default文件夹下的所有...
在"webWork2开发指南"中,你将学习到以下关键知识点: 1. **MVC模式**:WebWork2的核心设计就是MVC模式,它将应用程序分为三个主要部分:模型(Model)处理业务逻辑,视图(View)负责显示数据,控制器(Controller...
如果你已经熟悉了Struts,那么学习WebWork2将会是一个很好的提升,因为它可以帮助你更好地理解MVC模式,并且在实际开发中实现更加灵活和高效的编程。无论你是初学者还是有经验的开发者,本教程都将是你探索WebWork2...
通过阅读“webwork2官方文档中文版”,开发者可以深入理解WebWork2的架构,学习如何配置和使用它来开发高效、稳定的Web应用。文档通常会包含详细的配置说明、API参考、教程和案例研究,帮助开发者从基础到高级全面...
WebWork2是一款基于Java的MVC(Model-View-Controller)框架,用于构建Web应用程序。在Web开发领域,它提供了一种结构化和模块化的开发方式,帮助开发者更高效地组织代码并...这份指南将是你学习WebWork2的宝贵资料。
文档"webwork2doc_zh1[1].0a.pdf"很可能包含了以上所有内容的详细讲解,对于学习和掌握WebWork2框架,无论是初学者还是经验丰富的开发者,都是一个不可多得的学习材料。建议读者仔细阅读并结合实际项目进行实践,以...
通过这份指南,开发者不仅能学习到Webwork2的基本概念,还能掌握如何实际运用这些概念来构建功能丰富的Web应用。对于希望深入理解Java Web开发的人来说,Webwork2是一个值得研究的框架,而OpenDoc的这份指南无疑是一...
通过“Webwork2_guide.pdf”,读者将能够深入学习如何利用Webwork2的各种特性,包括Action的设计、拦截器的编写、配置文件的配置、异常处理和测试方法等,从而成为一名熟练的Webwork2开发者。这个指南对于初学者和...
Struts2、Webwork2 和 DWR 是三个在 Web 开发领域中至关重要的技术,尤其在构建企业级的 WEB2.0 应用程序时。接下来,我们将详细探讨这三个技术的核心概念、工作原理以及它们之间的关系。 **Struts2** 是一个基于 ...
本篇将围绕"WebWork入门学习"这一主题,深入讲解WebWork的核心概念、基本架构以及如何使用WebWork进行Web项目开发。 一、WebWork简介 WebWork由Apache软件基金会维护,其设计理念是通过减少样板代码和提供强大的...
通过本文档的学习,您将能够掌握 WebWork2 的基本组件和操作流程。 #### 二、核心概念与组成部分 ##### 2.1 Actions 和 Results - **Actions**:在 WebWork 中扮演控制器的角色,它们是应用的核心执行单元。每个 ...
1. **简洁的Action设计**: Webwork2的Action设计简单明了,降低了学习和使用的难度。 2. **强大的拦截器机制**: 拦截器使得代码解耦,提高了可维护性和扩展性。 3. **良好的异常处理**: Webwork2提供了统一的异常...
通过学习和研究这个WebWork2实例源代码,你可以深入了解J2EE应用的开发模式,熟悉MVC架构的实现,以及掌握如何利用WebWork2的特性来构建高效、可维护的Java Web应用。同时,这也是提升你对验证框架、依赖注入和拦截...
1. 易于学习:WebWork2 的API设计简洁,学习曲线较平缓。 2. 性能优良:WebWork2 通过高效的请求处理和轻量级的设计,提供了良好的性能。 3. 灵活性:WebWork2 允许开发者自定义许多方面,如拦截器、结果类型、...
通过这个例子,你可以学习到如何在WebWork2中定义Action,如何使用Velocity编写模板,以及如何在两者之间进行数据交互。这对于理解MVC架构,掌握Web开发的基本流程,以及提升Java Web应用的开发技能都是非常有益的。...
`webwork-2.x.jar`是WebWork的核心库,而`webwork-example.war`包含了示例应用,是学习WebWork特性和最佳实践的宝贵资源。此外,`webwork-migration.jar`对于从1.x版本迁移到2.x版本非常有用,提供了必要的类文件和...
通过本指南的学习,开发者能够深入了解Webwork2的内部机制,掌握其核心技术和高级特性,从而更高效地进行Web应用的开发工作。无论是对于新手还是有经验的开发者来说,这份指南都是宝贵的资源,它将引导你深入探索...
Webwork2 提供了丰富的开发工具,包括IDE插件、Maven插件以及详尽的开发者文档,使得学习和使用Webwork2变得更加容易。 总结来说,Webwork2 是一个强大且灵活的Web开发框架,通过其MVC架构、OGNL表达式、数据验证、...