`
wangyanlong0107
  • 浏览: 502183 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

【转】Struts 1.x 配置文件详解(下)

 
阅读更多

9)      form-property标记

form-property标记用于定义动态的FormBean的表单属性,动态FormBean可以使您在Struts的配置文件当中(而不是具体的类当中)定义表单的属性.如果包含的form-bean标记的type属性不是org.apache.struts.action.DynaActionForm或者其子类,则将忽略此标记.

属性

说明

必需

className

指定该属性要使用的FormPropertyConfig子类的全限定类名,默认名称为org.apache.struts.config.FormPropertyConfig

initial

指定属性的初始值.如果没有指定,属性的值将被初始化为0,对象将由其默认构造函数进行初始化(因此,String将初始化为””)

name

指定属性的名称

size

指定当type属性指定一个数组并且initial属性被省略时要创建的数组的大小.

type

指定属性的底层字段的全限定类名.此外[]可以追加到类型声明中以表示该字段的索引(比如说,java.lang.Strin[])

<form-beans>

    <form-bean name=”logonForm”

type=”org.apache.struts.action.DynaActionForm”>

                <form-property name=”username”

                             typ=”java.lang.String”/>

                <form-property name=”password”

                             type=”java.lang.String”/>

    </form-bean>

</form-beans>

不需要为FormBean定义指定具体类,您只需要将其类型设置为org.apache.struts.action.DynaActionForm或者其子类,然后使用form-property标记列出它的各个属性.

 

10)      forward标记

forward标记用于定义URL的逻辑名称,这样,代码等可以引用逻辑名称而无需引用URL本身.

使用forward标记有两种方法:

     通过在global-forwards标记中包含forward标记来定义全局forward.所有操作都可以访问全局forward.

     通过在action标记下嵌套forward标记来定义特定操作的forward.特定操作的forward只适用于包含它的操作.并将覆盖同一逻辑名称的所有全局forward.

属性

说明

必需

className

为当前forward定义指定要实例化的配置对象的全限定类名,默认名称为org.apache.struts.config.ForwardConfig

contextRelative

可以设置为true或者false,表示使用应用程序模块时,path属性指定的url是否是相对于应用程序的URL,默认值为false

name

指定forward的逻辑名称

path

指定forwardURL

redirect

可以设置为true或者false,表示是否为该forwardURL执行HTTP重定位,默认值为false

使用forward标签的第一种形式:

<global-forwards>

    <forward name=”success” path=”/success.jsp”/>

</global-forwards>

使用forward标签的第二种形式

<action-mappings>

<action path=”/search”

type=”com.yinhai.app.SearchAction”>

<forward name=”success”

path=”/results.jsp”/>

</action>
</action-mappings>

 此例定义了一个特定操作的forward.forward只适用于包含它的操作,并且将覆盖同一个逻辑名称的全局forward(如果有).

 

11)      global-exceptions标记

global-exceptions标记用于封装exception标记定义的,应用程序的一组全局异常处理程序,除非操作的响应action标记通过在其下嵌套exception标记来覆盖一个或者多个全局异常处理程序,否者这些全局异常处理程序将用于操作抛出的所有的异常.

<global-exceptions>

<exception type=”com.yinhai.app.DateFormatException”

key=”errors.date.format”

path=”/error.jsp”/>
    </global-exceptions>

        上面的标记仅封装应用程序的一组全局异常处理程序.

 

12)      global-forwards标记

global-forwards标记用于封装forwards标记定义的,应用程序的一组forward,除非嵌套的forward标记来定义一个forward,否则全局forward将作用于决定在完成操作时转向何处.

<global-forwards>

<forward name=”success”  path=”/success.jsp”/>

<forward name=”failure”   path=”/failure.jsp”/>

</global-forwards>

此标记封装应用程序的一组全局forward.

 

13)      message-resources标记

message-resources标记用于定义在查找具体化的字符串,消息和标签时Struts将使用的资源束.

属性

说明

必需

className

为当前消息资源定义指定要实例化的配置对象的全限定类名,默认名称为org.apache.struts.config.MessageResourcesConfig

factory

指定将用于创建消息资源实例的MessagesResourcesFactory子类的全限定类名,默认名称为org.apache.struts.util.PropertyMessageResourcesFactory

key

指定将存储消息资源实例的Servlet环境属性关键字,如果使用应用程序模块,模块前缀将被追加该关键字,比如${key}${prefix}默认的常量是org.apache.struts.Globals.MESSAGES_KEY指定的值

null

可以设置为true或者false,表示缺少消息时是否应该返回空值.

parameter

指定一个配置参数值,该值将传递给factory属性指定的工厂对象的createResources()方法

以下说明了message-resources标记的基本用法:

<message-resources

    parameter=”com.yinhai.app.ApplicationResources”/>

该示例指定Struts应该使用com.yinhai.app程序包中的名字为ApplicationResources.properties的文件作为其资源束,请注意,文件名中的.properties部分,并非由标记指定,Struts自动将其追加到使用parameter属性指定的文件名的后面.

有时,使用多个资源束是很有用处的,或者需要使用多个资源束.您可以通过在配置文件中使用多个message-resources标记来完成此过程,如下所示:

<message-resources

     parameter=”com.yinhai.app.ApplicationResources”/>

<message-resources

     parameter=”com.yinhai.app.AlternateApplicationResources”

     key=”alternate”/>

每个messag-resources标记示例必须通过key属性指定唯一的关键字来进行识别.除非它表示默认的资源束.不需要制定明确的关键字.

 

14)      plug-in标记

plug-in标记用于定义一个插件,Struts在应用程序启动时加载此插件,在应用程序关闭时卸载此插件.此外,插件对于在应用程序启动时加载永久性资源是非常有用的.每个插件类必须实现Strutsorg.apache.struts.action.PlugIn接口.当应用程序启动时,将调用插件的init()方法.当一应用程序关闭时候,将调用插件的destroy()方法.

属性

说明

必需

className

指定插件的全限定类名,此类必须实现org.apache.struts.action.PlugIn接口

以下示例说明了plug-in标记的用法:

<plug-in  className=”org.apache.struts.validator.ValidatorPlugIn”>

    <set-property property=”pathnames”

               value=”/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml”?>

</plug-in>

由于plug-in标记只有一个属性,由于它非常简单.大多数情况下将嵌套set-property标记来配置此插件.每个插件定义了了可以通过set-property标记配置自己的一组属性.

 

15)      set-property标记

set-property标记用于定义属性以及属性值.可以再许多其他Struts配置文件标记中嵌套该标记的实例来指定属性,这些属性将在实例化标记的相应配置对象时设置.Struts基于该标记的property属性指定的名称,使用反射来查找并调用配置对象的某种值设置方法(例如,对于名称myProp的属性,调用setMyProp()).

属性

说明

必需

property

指定属性名称

value

指定属性的值

示例:

<plug-in  className=”org.apache.struts.tiles.TilesPlugin”>

<set-property property=”definition-config” value=”/WEB-INF/tiles-defs.xml”/>

<set-property property=”moduleAware” value=”true”/>

</plug-in>

 

16)      struts-config标记

struts-config标记是Struts配置文件的根标记,因此封装了改文件中的所有的其他的标记,该标记仅仅是用于表示配置文件的开始和结束.

 

PS:元数据标记

可以再Struts配置文件的一些标记中嵌套元数据标记.元数据标记的存在只为额外信息添加到将在GUI工具或者类似的工具中显示的配置文件中,Struts本身则忽略元数据标记.所有元数据标记均无属性,因此您只需要在起始和结束标记之间添加文本已指定他们的值.如下所示:

<action path=”/search” type=”com.yinhai.app.SearchAction”>

<icon>

    <small-icon>small.gif</small-icon>

    <large-icon>large.gif</large-icon>

</icon>

<display-name>SearchAction</display-name>

<description>Search Action for employees</description>

</action>

 

参考:Struts程序员查询辞典 Jomes Holmes(孙燕等译)中国铁道出版社.

分享到:
评论

相关推荐

    struts1.x 常用知识详解

    3. **配置文件**:`struts-config.xml`是Struts1.x的核心配置文件,用于定义Action、ActionForm、ActionForward等元素,以及数据源和国际化资源等。 二、ActionForm与数据绑定 1. **ActionForm**:ActionForm对象...

    struts1.x标签详解

    ### Struts1.x 标签详解 #### 一、引言 Struts 是 Apache Jakarta 的一个著名开源项目,旨在为构建基于 Java 的 Web 应用程序提供一个强大的框架。Struts 提供了大量的标签来帮助开发者简化开发过程。本文将详细...

    Struts1.x_Project.zip

    5. **Struts-config.xml**:配置文件,包含了ActionMapping、ActionForm、数据源等设置。 **I18N国际化:** 在Struts1.x中,实现I18N(Internationalization)主要是通过资源文件(如*.properties)来管理不同语言...

    魔乐科技Struts2.x框架笔记

    **Struts2.x与Struts1.x对比**:相较于Struts1.x,Struts2.x具有更多的优势,如不再强制要求ActionForm,配置文件更简洁,处理流程更加清晰。具体而言,请求首先被过滤器捕获,然后根据`struts.xml`文件的配置调用...

    Struts1.x-Hibernate,曾删改查

    Struts1.x 是Apache软件基金会下的一个项目,它的出现是为了解决JSP和Servlet在大型项目中的组织和管理问题。它提供了一个规范化的架构,使开发者能够更有效地分离业务逻辑、视图和控制层。在Struts1.x中,Action类...

    struts1.x入门

    这个例子虽然简单,但涵盖了 Struts 1.x 开发的基本流程,包括环境搭建、ActionForm 和 Action 类的编写以及配置文件的设置。接下来,你可以继续探索更多关于 Struts 的高级特性,如拦截器、国际化支持等,以进一步...

    struts in action (struts1.x)

    - **struts-config.xml**: 这是 `Struts 1.x` 的核心配置文件,定义了动作映射(Action Mapping)、表单bean、数据源等。通过这个文件,你可以明确地指定每个HTTP请求应如何映射到特定的 `Action` 类。 ### 4. 请求...

    struts的总结(struts1.x)

    #### 二、Struts 配置文件详解 **1. `struts-config.xml` 文件解析** `struts-config.xml` 是 Struts 1.x 中的核心配置文件,用于定义应用程序的行为和结构。主要包括以下几个部分: - **Form Beans 定义**:用于...

    struts1.x教程

    ### Struts1.x教程知识点详解 #### 一、Struts框架概述 Struts是一个开源的MVC(Model-View-Controller)框架,最初由Tangent Systems公司开发,并于2000年捐赠给Apache Software Foundation,成为Apache Jakarta...

    Struts1.x.pdf

    ### Struts 1.x 在MVC架构中的角色与工作流程详解 #### Struts 概述与MVC设计模式实现 Struts是Apache软件基金会赞助的一个开源项目,它为基于Java的Web应用程序提供了一种实现MVC(Model-View-Controller)设计...

    struts1多模块多配置文件

    ### Struts1多模块多配置文件的开发流程详解 #### 一、引言 在大型项目的开发过程中,为了更好地组织代码结构,提高系统的可维护性和扩展性,通常会采用多模块的设计模式。对于使用Struts1框架进行开发的项目而言,...

    struts1.x入门[修订版]

    通过本实例,我们可以了解到 Struts 1.x 框架的基本使用流程和关键组件,包括如何创建 ActionForm、Action 以及配置文件等。这为后续深入学习 Struts 提供了良好的基础。 - **ActionForm**:封装用户输入数据,通常...

    struts 1.x学习笔记

    ### Struts 1.x 学习笔记 #### 一、MVC 概述 MVC(Model-View-Controller)模式是一种广泛应用于软件工程中的设计模式,尤其在Web应用程序开发中非常常见。它将应用程序分为三个核心部分: 1. **模型(Model)**...

    Struts struts-config.xml配置

    而`struts-config.xml`配置文件则是Struts应用的核心配置文件,它负责管理Struts应用中的各种组件配置。本文将详细介绍`struts-config.xml`配置文件的关键组成部分及其作用。 #### 二、文件结构 `struts-config.xml...

    Struts 配置文件详解

    ### Struts配置文件详解 #### 一、概述 Struts框架是Java Web开发中的一个重要工具,它使用MVC(Model-View-Controller)设计模式来组织应用逻辑,从而提高代码的可维护性和可读性。Struts框架的核心是通过两个XML...

    Ajax+Struts1.x 登陆程序源代码(详解)

    用AJAX+STRUTS写的登陆程序,并且附加了超级详尽的源码注释,并且代码分离非常清晰。...总之,就是整个AJAX+STRUTS项目登陆程序打包,可以在ECLIPSE下导入,在TOMCAT5.X下运行(这需要将下载包当中的sql先执行)

    Struts1.3和config配置详解

    在Struts1.3版本中,`struts-config.xml`配置文件扮演着至关重要的角色,它是Struts框架的核心配置文件,定义了控制器的行为和应用的结构。 `struts-config.xml`配置详解: 1. **全局常量配置**:此部分用于定义...

    struts1初级教程

    - **配置文件(struts-config.xml)**:定义应用的行为规则,如Action映射等。 **3. 开发环境搭建** - **MyEclipse**:一款集成开发环境,支持多种语言开发,特别适合Java Web项目。 - **数据库连接**:使用JDBC...

    struts2.例子

    ### 配置文件详解 #### 1. web.xml配置 在`web.xml`中配置Struts2过滤器是非常重要的一步,因为这会直接影响到Struts2框架的初始化和请求处理流程。以下是文件中的关键部分: ```xml &lt;filter-name&gt;Struts2 ...

Global site tag (gtag.js) - Google Analytics