WEB开发网
开发学院WEB开发Jsp 用ActionMapping构建漂亮的Struts应用程序 阅读

用ActionMapping构建漂亮的Struts应用程序

 2008-01-05 19:30:07 来源:WEB开发网   
核心提示:用ActionMapping构建漂亮的Struts应用程序 在本系列指南的第四部分,你可以学习如何运用ActionMapping来改进你的Struts应用程序,用ActionMapping构建漂亮的Struts应用程序,by Budi Kurniawan 阅读本系列指南的前三部分:第一部分:“你的第一个Struts应

用ActionMapping构建漂亮的Struts应用程序


 

在本系列指南的第四部分,你可以学习如何运用ActionMapping来改进你的Struts应用程序。
by Budi Kurniawan

阅读本系列指南的前三部分:
第一部分:“你的第一个Struts应用程序”
第二部分:“Struts应用程序中的流程控制”
第三部分:“用ActionForward优化你的Struts应用程序”

邱吉尔曾经说过他喜欢学习新东西,但他觉得没有必要让别人教他。不管你是否喜欢学习新知识,也不管有人教你还是你自学,学习java通常意味着仔细研究许多非凡的类。学习Struts也是如此。

这就是我写本系列第四部分的初衷,在本文中,我将详述org.apache.struts.action.ActionMapping类,它是从org.apache.struts.config.ActionConfig派生的。ActionMapping将一个请求路径映射到一个action类,它是Struts应用程序中最常用的类之一。在你深入学习这个类时,你会重新用到在该系列第1、2和3部分创建的两个login应用程序,从而了解如何运用ActionMapping来重写应用程序。

当然,你可能不记得以前用过任何ActionMapping实例了。这是因为控制器servlet实际上为你创建了它们。你只需要配置在Struts配置文件(struts-config.xml)中创建的每个ActionMapping实例就行了(通过给它的属性赋值)。了解这些属性对正确运用ActionMapping类很重要,因此我将讲述这些属性以及如何定义它们。

首先,让我们回想一下,Struts配置文件的根元素是<struts-config>。<struts-config>元素可以包含一个可选的<action-mappings>元素,同样<action-mappings>元素可以包含<action>元素。例如,下面就是本系列第三部分的login应用程序配置文件中的<struts-config>元素及其子元素:

<struts-config>
  <action-mappings>
   <action path="/login"
         type="com.javaPRo.struts.LoginAction"/>
   <action path="/logout"
         type="com.javapro.struts.LogoutAction"/>
   <action path="/viewSecret"
         type="com.javapro.struts.ViewSecretAction"/>
  </action-mappings>
</struts-config>

<action-mapping>中的每个<action>都代表控制器servlet创建的一个ActionMapping实例。一个<action>元素可以包含多个特性,每个特性都和ActionMapping实例中的一个属性相应。

作为例子,我们来看前面的Struts配置文件中的这个<action>元素:

<action path="/login"
    type="com.javapro.struts.LoginAction"/>

这个<action>将路径“/login”映射到action类com.javapro.struts.LoginAction。换句话说,一个以“/login.do”结尾的用户请求将被传递到LoginAction类。然而,ActionMapping也有其它的用途。你(Struts程序员)可以通过给它的属性赋值来给ActionMapping实例下达action指令。(有些属性与action forms相关,我将在本系列的第五部分讲述。)

ActionMapping类的属性

Tags:ActionMapping 构建 漂亮

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接