`
wanxiaotao12
  • 浏览: 472416 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

WebWork框架原理

 
阅读更多

WebWork的三个关键部分

 

1、  Actions。一般一个Action代表一次请求或调用。在WebWork中,一般Action类需要实现Action接口,或者直接继承基础类ActionSupport。这是,它要实现默认的execute方法,并返回一个在配置文件中定义的Result(也就是一个自定义的字符串而已)。当然,Action也可以只是一个POJO(普通Java对象),不用继承任何类也不用实现任何接口。Action是一次请求的控制器,同时也充当数据模型的角色,我们强烈建议不要将业务逻辑放在Action中。

 

2、  Results。它是一个结果页面的定义。它用来指示Action执行之后,如何显示执行的结果。Result Type表示如何以及用哪种视图技术展现结果。通过Result Type,WebWork可以方便的支持多种视图技术;而且这些视图技术可以互相切换,Action部分不需做任何改动。

 

3、  Interceptors。WebWork的拦截器,WebWork截获Action请求,在Action执行之前或之后调用拦截器方法。这样,可以用插拔的方式将功能注入到Action中。WebWork框架的很多功能都是以拦截器的形式提供出来。例如:参数组装,验证,国际化,文件上传等等。

 

4、“ name ”参数用于请求的 URL 。例如: http://localhost/welcome.action ,这样通过请求的 url ,我们就可以在配置文件中找到对应的 action 。

 

5、们这里使用了 WebWork 提供的 params 拦截器,它能自动的帮我们将请求的参数组装成 Action 中需要的数据对象

 

WebWork 原理

WebWork的网站上提供了一个完整的WebWork架构图。它描述了从客户端的一次请求到最后服务器端响应的的整个执行过程。架构图如下:

此架构图一个分为五个部分,其中五个部分分别有五中不同颜色表示。

1、  浅灰色方框。分别代表了客户端的一次Http请求,和服务器端运算结束之后的一次响应。

2、  浅红色方框。表示一次Action请求所要经过的Servlet filters(Servlet 过滤器)。我们可以看到最后一个filter就是我们前面介绍的WebWork的前端控制器。

3、  蓝色方框。这是WebWork框架的核心部分。

1)  一次请求到了WebWork的前端控制器,它首先会根据请求的URL解析出对应的action 名称,然后去咨询ActionMapper这个action是否需要被执行。

2)  如果ActionMapper决定这个action需要被执行,前端控制器就把工作委派给ActionProxy。接着她们会咨询WebWork的配置管理器,并读取在web.xml文件中定义的配置信息。接下来ActionProxy会创建ActionInvocation对象。

3)  ActionInvocation是Xwork原理的(Command模式)实现部分。它会调用这个Action已定义的拦截器(before方法),Action方法,Result方法。

4)  最后,看上面流程的图的方向,它会再执行拦截器(after方法),再回到Servlet Filter部分,最后结束并传给用户一个结果响应。

4、  靛色方框。这是拦截器部分,在上面的拦截器章节我们已经有了详细的介绍。

5、  黄色方框。这是我们在开发Web应用时,需要自己开发的程序。其中包括:Action类,页面模板,配置文件xwork.xml。

 

参考:http://developer.51cto.com/art/200907/135543.htm

  • 大小: 227.4 KB
分享到:
评论

相关推荐

    WebWork中文文档

    ”表明这是一份关于WebWork框架的学习资料。WebWork是一个基于Java的开源Web应用框架,它提供了一种灵活的方式来构建复杂的Web应用程序。下面,我们将详细探讨与WebWork相关的几个关键知识点。 ### WebWork框架简介...

    webwork资源

    WebWork 是一个基于Java的Web应用程序框架...通过深入理解WebWork的原理,如Action、Interceptor以及ActionContext等,开发者可以更好地适应和运用这个框架,解决实际开发中的问题,进行高效且易于维护的Web应用开发。

    webwork中文文档

    从给定的文件信息来看,标题和描述都指向了“webwork中文文档”,这暗示了文档的主要内容将围绕WebWork框架展开。WebWork是一个开源的Java Web应用开发框架,它在2000年初非常流行,是Struts框架的一个替代方案,...

    webwork工作机制

    WebWork框架的初始化是在服务器启动时进行的,这主要通过在`web.xml`文件中配置的`FilterDispatcher`过滤器来实现。当服务器启动并加载`web.xml`时,`FilterDispatcher`的`init(FilterConfig filterConfig)`方法会被...

    webwork

    这个"webwork源码下载"可能是指获取WebWork框架的源代码,这对于学习、调试或自定义框架功能的开发者来说是很有价值的。 WebWork的核心特性包括: 1. **动作映射**:WebWork通过XML配置文件定义动作(Action)与...

    Webwork2框架的开发指南资源文件

    在学习这个框架时,首先应该了解MVC模式的基本原理,然后深入研究Webwork2的配置文件和动作类的编写,理解如何定义动作映射。接着,学习数据绑定和验证机制,掌握如何编写有效的验证规则。不要忽视异常处理和拦截器...

    Webwork教程

    #### 一、WebWork框架简介 **WebWork**是一个开源的Java Web应用程序框架,它的设计理念是简化Web应用的开发过程,提高开发效率。随着时间的发展,WebWork逐渐演变成了**Struts2**框架的核心部分。本文档主要介绍了...

    webwork+spring+hibernate+freemarker (A)demo_lib

    Webwork、Spring、Hibernate和Freemarker是Java Web开发中常用的四大框架,它们各自负责不同的职责,协同工作可以构建出高效、...对于学习或实践Java Web开发的人员来说,理解和掌握这四个框架的协同工作原理至关重要。

    webwork源码底层实现

    通过分析`webwork-default.xml`,你可以掌握配置文件的结构和配置项的作用,这对于定制和扩展WebWork框架至关重要。 WebWork虽然现在已经被Struts2和Spring MVC等更现代的框架取代,但其设计理念和实现方式对于理解...

    webwork深入浅出学习资料

    《WebWork深入浅出学习资料》无疑是一份宝贵的资源,它不仅详细介绍了框架的基本概念和工作原理,还提供了丰富的实践案例,有助于读者迅速提升开发技能,从而在实际项目中发挥WebWork框架的最大效能。

    webwork2个人学习总结

    Webwork2作为一个早期的Java Web框架,虽然现在已被Struts2所替代,但其设计理念和机制对理解现代MVC框架的工作原理仍然有价值。学习Webwork2可以帮助开发者更好地理解和掌握MVC架构,以及拦截器、配置文件等核心...

    webWork

    这个“webWork中文教程”旨在帮助开发者深入理解WebWork框架的原理、特性和实践方法。下面,我们将详细介绍WebWork的核心概念、主要功能以及如何通过学习文档来提升开发技能。 一、WebWork概述 WebWork是由Apache...

    spring和webwork包

    标题中的“spring和webwork包”指的两个著名的Java Web框架——Spring框架和WebWork框架。Spring是一个全方位的开源框架,主要用于简化企业级Java应用的开发,它强调了依赖注入(Dependency Injection,DI)和面向切...

    webwork in action

    根据提供的文件信息,本书《WebWork in Action》主要聚焦于Java WebWork框架的应用与实践,是一本详尽介绍WebWork框架各个方面的书籍。下面将基于标题、描述、标签及部分内容来提取并归纳出相关的IT知识点。 ### ...

    webwork教程很好的学习教程

    #### 一、WebWork框架简介 **WebWork**是一个由OpenSymphony组织开发的Java Web框架,它采用了Model-View-Controller(MVC)设计模式,旨在实现组件化和代码重用。WebWork的最新版本为2.1,该版本在原有基础上进行...

    webwork-1.4-src.zip_webwork_webwork s_webwork.zip_webwork1.4.zip

    在"webwork-1.4-src.zip"这个压缩包中,包含了WebWork1.4的源代码,这对于学习和理解WebWork的工作原理以及进行定制开发非常有帮助。 1. **MVC模式**:WebWork1.4遵循MVC架构,将应用程序分为模型、视图和控制器三...

    webwork+spring整合例子 内带使用说明 以及webwork文档(中文)

    而“webwork文档(中文)”则提供了关于WebWork框架的详细信息,对于理解WebWork的工作原理和如何利用其功能至关重要。 总的来说,这个压缩包提供了一个学习和实践WebWork和Spring整合的绝佳资源。通过研究这个例子...

    webwork2.1.7

    9. **src**:源代码目录,包含了WebWork框架的源码或者示例应用的源码。 10. **lib**:库文件目录,存放了WebWork和其他依赖的第三方库。 **应用场景与学习价值:** WebWork 2.1.7虽然已不再活跃开发,但它的一些...

Global site tag (gtag.js) - Google Analytics