`
冰云
  • 浏览: 142139 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

Struts快速入门(二)

阅读更多

Struts MVC 语义 <!----><o:p></o:p>

我们从关键的Struts抽象概念开始,这是它MVC架构的核心。Struts使用Service to Worker模式实现了MVC模式。[Core]<o:p></o:p>

<o:p> </o:p>

控制器对象<o:p></o:p>

控制器被ActionServlet类所实现。它提供一个中心位置来处理全部的终端请求。这就为处理视图和导航管理的控制层提供了更为清晰的划分,把模型访问和操作留给专门的请求处理器。全部提交的请求被映射到中心处理器,其配置说明如下:<o:p></o:p>

<servlet><o:p></o:p>

<servlet-name>action</servlet-name><o:p></o:p>

<servlet-class>org.apache.struts.action.ActionServlet</servlet-class><o:p></o:p>

</servlet><o:p></o:p>

全部的请求URI*.do的模式存在并映射到这个servlet,其配置如下:<o:p></o:p>

<servlet-mapping><o:p></o:p>

<servlet-name>action</servlet-name><o:p></o:p>

<url-pattern>*.do</url-pattern><o:p></o:p>

</servlet-mapping><o:p></o:p>

一个该模式的请求URI符合如下格式: <o:p></o:p>

              http://www.my_site_name.com/mycontext/actionName.do<o:p></o:p>

上述的映射叫做扩展映射,你也可以声明路径映射,使用/*结尾的模式,如下所示:<o:p></o:p>

<servlet-mapping><o:p></o:p>

<servlet-name>action</servlet-name><o:p></o:p>

<url-pattern>/do/*</url-pattern><o:p></o:p>

</servlet-mapping><o:p></o:p>

一个该模式的请求URI符合如下格式:<o:p></o:p>

http://www.my_site_name.com/mycontext/do/action_Name<o:p></o:p>

如上描述的资源逻辑映射允许在配置文件中修改资源映射而不需修改任何应用系统代码。该映射方案也被用于Mulitplexed Resource Mapping。控制器为所有的表示层请求提供了一个集中的访问点。控制器区分每一个提交的请求到RequestProcessor,其轮流发送请求到相关的表单bean进行表单验证,然后发到一个请求处理器以访问模型。这个控制器提供的抽象概念减轻了开发者建立公共应用系统服务的困难,如管理视图、会话及表单数据。开发者支持一个通用机制如错误及异常处理,导航,国际化,数据验证,数据转换等。<o:p></o:p>

Struts 1.1中,控制器需要在init()方法中读取配置。该配置控制了架构的行为,含有URI到请求处理器的映射如使用ActionMapping配置对象,设置信息资源,提供通过插件访问外部资源等等。事实上,提交请求的处理实际发生在ActionServlet委托所有的输入请求到RequestProcessor的过程中。<o:p></o:p>

<o:p> </o:p>

发送者对象<o:p></o:p>

       RequestProcessor功能是作为发送者,按实例化(或复用)一个请求处理器和一个相应的表单bean来处理请求。表单bean和请求处理器中错误的建立或异常的抛出被RequestProcessor处理,并影响RequestProcessor的视图管理功能。表单bean辅助RequestProcessor保存表单数据和/或准备视图必须的中间模型数据。RequestProcessor使用<action>声明struts-config.xml文件,如下所示,例如特定请求的请求处理器。<o:p></o:p>

<action-mappings><o:p></o:p>

<action path="/editCustomerProfile"<o:p></o:p>

type="packageName.EditCustomerProfileAction"<o:p></o:p>

name="customerProfileForm"<o:p></o:p>

scope="request"/><o:p></o:p>

</action-mappings><o:p></o:p>

<form-bean name="customerProfileForm"<o:p></o:p>

type="packageName.customerProfileForm"/><o:p></o:p>

       全部提交的请求都被控制器委托到RequestProcessor的对象发送者。RequestProcessor检查请求URI找到动作标示符,并使用ActionMapping对象中的信息建立一个请求处理器实例,然后调用requesthandler.execute(…)方法。请求处理器中execute(…)方法任务是和应用模型互相作用。请求处理器根据结果返回以一个ActionForward配置对象到RequestProcessorRequestProcessor将用ActionForward对象来通过执行RequestDispatcher.forward(…)response.sendRedirect(…)来调用下一个视图。

 

<o:p>(待续..)</o:p>

<o:p></o:p> 

<o:p>

<o:p>冰云翻译,转载请告知。</o:p>

<o:p>icecloud@sina.com</o:p>

</o:p>


分享到:
评论

相关推荐

    struts快速入门的最好教程

    Struts2框架简介 Struts2历史 Struts2与MVC Struts2体系介绍 Struts2体系架构 Struts2工作流程 Struts2基本知识点 Struts2标签库简介 Struts2拦截器 默认配置文件struts-default.xml概要说明 Struts2核心配置文件...

    struts快速入门 视频

    在本"Struts快速入门"视频中,我们将探讨如何利用Struts来实现一个基础的登录功能,这是一个常见且重要的任务,对于理解Struts的工作原理至关重要。 首先,我们需要了解Struts的核心概念。Struts是基于Model-View-...

    struts快速入门源码

    本资源"struts快速入门源码"旨在帮助初学者快速掌握Struts框架的核心概念和基本用法,确保在学习过程中不会遇到任何报错,是学习Struts的优质实践案例。 Struts1.2是该框架的一个较早版本,虽然现在已经有了更新的...

    struts2入门demo

    Struts2是一个强大的Java EE应用程序框架,用于构建和维护可扩展、模块化且易于管理的Web...对于想要深入学习Struts2的人来说,这是一个很好的起点,可以帮助他们快速掌握基础,为进一步的学习和实践打下坚实的基础。

    struts1.3 入门级例子

    总之,这个入门级例子涵盖了Struts1.3的基础架构和主要组件的使用,对初学者来说是一个很好的起点,可以让他们快速理解Web应用开发的基本流程和思想。通过实践这个例子,可以为学习更复杂的Struts1.3应用或其他Java ...

    Struts2入门案例 实现简单的Struts2入门jar包.rar

    6. ** strut2入门案例**:这个入门案例可能是创建一个简单的“Hello, World”程序,演示如何配置Struts2框架,创建Action类,编写对应的JSP页面,并在web.xml中进行必要的初始化设置。这个例子会帮助初学者快速理解...

    struts2入门级的例子

    通过实践这些例子,你可以快速掌握Struts2的使用方法,从而提高你的Web开发技能。 1. **配置环境**: 首先,你需要设置Java开发环境和Apache Tomcat服务器,并在项目中引入Struts2的核心库。这通常涉及下载Struts2的...

    Struts2入门demo

    这个"Struts2入门demo"旨在为初学者提供一个快速理解并实践Struts2框架的起点。以下是对Struts2核心概念和相关知识点的详细说明: 1. **MVC模式**:Struts2是基于Model-View-Controller(MVC)设计模式的,它将业务...

    Struts1入门实例(完整代码)

    总之,Struts1入门实例是一个很好的起点,它让你能快速搭建一个简单的Web应用并了解其运作机制。通过实践这个实例,你可以深入理解MVC模式,掌握Struts1框架的基本使用,为进一步的Java Web开发打下坚实基础。

    java Struts2快速入门教程pdf

    本教程将带你深入理解Struts2的基础概念、核心组件以及如何快速入门。 一、Struts2框架概述 Struts2是Struts1的升级版,它吸收了WebWork框架的优点,极大地提高了开发效率和代码的可维护性。Struts2基于拦截器模型...

    Struts2入门V3.0.pdf

    Struts2是一个基于MVC(Model-View-Controller)设计模式的Java web应用程序框架,它在Struts1的基础上进行了很多改进和增强,提供了..."Struts2入门V3.0.pdf"这份文档将详细地介绍这些内容,是初学者入门的良好教程。

    struts2.0入门案例

    这个入门案例旨在帮助初学者快速理解Struts2.0的基本架构和配置。我们将创建一个简单的用户登录应用,包含一个登录表单和一个处理登录请求的Action。 三、环境配置 1. 安装JDK:确保你的开发环境已经安装了Java ...

    Struts快速入门

    在本"Struts快速入门"教程中,我们将深入理解Struts的基本概念、核心组件以及如何通过实例来实现一个简单的Hello World应用程序。 首先,Struts框架的核心组件包括Action、ActionForm、Dispatcher Servlet(也称为...

    struts入门最简单例子

    这个"struts入门最简单例子"旨在帮助初学者快速理解并掌握Struts2的基本用法。Struts2框架提供了丰富的功能,如动作映射、结果类型、拦截器、动态方法调用等,使得开发者能够构建结构清晰、可维护性强的Web应用程序...

Global site tag (gtag.js) - Google Analytics