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 |
指定forward的URL |
是 |
redirect |
可以设置为true或者false,表示是否为该forward的URL执行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在应用程序启动时加载此插件,在应用程序关闭时卸载此插件.此外,插件对于在应用程序启动时加载永久性资源是非常有用的.每个插件类必须实现Struts的org.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著(孙燕等译)中国铁道出版社.
相关推荐
3. **配置文件**:`struts-config.xml`是Struts1.x的核心配置文件,用于定义Action、ActionForm、ActionForward等元素,以及数据源和国际化资源等。 二、ActionForm与数据绑定 1. **ActionForm**:ActionForm对象...
### Struts1.x 标签详解 #### 一、引言 Struts 是 Apache Jakarta 的一个著名开源项目,旨在为构建基于 Java 的 Web 应用程序提供一个强大的框架。Struts 提供了大量的标签来帮助开发者简化开发过程。本文将详细...
5. **Struts-config.xml**:配置文件,包含了ActionMapping、ActionForm、数据源等设置。 **I18N国际化:** 在Struts1.x中,实现I18N(Internationalization)主要是通过资源文件(如*.properties)来管理不同语言...
**Struts2.x与Struts1.x对比**:相较于Struts1.x,Struts2.x具有更多的优势,如不再强制要求ActionForm,配置文件更简洁,处理流程更加清晰。具体而言,请求首先被过滤器捕获,然后根据`struts.xml`文件的配置调用...
Struts1.x 是Apache软件基金会下的一个项目,它的出现是为了解决JSP和Servlet在大型项目中的组织和管理问题。它提供了一个规范化的架构,使开发者能够更有效地分离业务逻辑、视图和控制层。在Struts1.x中,Action类...
这个例子虽然简单,但涵盖了 Struts 1.x 开发的基本流程,包括环境搭建、ActionForm 和 Action 类的编写以及配置文件的设置。接下来,你可以继续探索更多关于 Struts 的高级特性,如拦截器、国际化支持等,以进一步...
- **struts-config.xml**: 这是 `Struts 1.x` 的核心配置文件,定义了动作映射(Action Mapping)、表单bean、数据源等。通过这个文件,你可以明确地指定每个HTTP请求应如何映射到特定的 `Action` 类。 ### 4. 请求...
#### 二、Struts 配置文件详解 **1. `struts-config.xml` 文件解析** `struts-config.xml` 是 Struts 1.x 中的核心配置文件,用于定义应用程序的行为和结构。主要包括以下几个部分: - **Form Beans 定义**:用于...
### Struts1.x教程知识点详解 #### 一、Struts框架概述 Struts是一个开源的MVC(Model-View-Controller)框架,最初由Tangent Systems公司开发,并于2000年捐赠给Apache Software Foundation,成为Apache Jakarta...
### Struts 1.x 在MVC架构中的角色与工作流程详解 #### Struts 概述与MVC设计模式实现 Struts是Apache软件基金会赞助的一个开源项目,它为基于Java的Web应用程序提供了一种实现MVC(Model-View-Controller)设计...
### Struts1多模块多配置文件的开发流程详解 #### 一、引言 在大型项目的开发过程中,为了更好地组织代码结构,提高系统的可维护性和扩展性,通常会采用多模块的设计模式。对于使用Struts1框架进行开发的项目而言,...
通过本实例,我们可以了解到 Struts 1.x 框架的基本使用流程和关键组件,包括如何创建 ActionForm、Action 以及配置文件等。这为后续深入学习 Struts 提供了良好的基础。 - **ActionForm**:封装用户输入数据,通常...
### Struts 1.x 学习笔记 #### 一、MVC 概述 MVC(Model-View-Controller)模式是一种广泛应用于软件工程中的设计模式,尤其在Web应用程序开发中非常常见。它将应用程序分为三个核心部分: 1. **模型(Model)**...
而`struts-config.xml`配置文件则是Struts应用的核心配置文件,它负责管理Struts应用中的各种组件配置。本文将详细介绍`struts-config.xml`配置文件的关键组成部分及其作用。 #### 二、文件结构 `struts-config.xml...
### Struts配置文件详解 #### 一、概述 Struts框架是Java Web开发中的一个重要工具,它使用MVC(Model-View-Controller)设计模式来组织应用逻辑,从而提高代码的可维护性和可读性。Struts框架的核心是通过两个XML...
用AJAX+STRUTS写的登陆程序,并且附加了超级详尽的源码注释,并且代码分离非常清晰。...总之,就是整个AJAX+STRUTS项目登陆程序打包,可以在ECLIPSE下导入,在TOMCAT5.X下运行(这需要将下载包当中的sql先执行)
在Struts1.3版本中,`struts-config.xml`配置文件扮演着至关重要的角色,它是Struts框架的核心配置文件,定义了控制器的行为和应用的结构。 `struts-config.xml`配置详解: 1. **全局常量配置**:此部分用于定义...
- **配置文件(struts-config.xml)**:定义应用的行为规则,如Action映射等。 **3. 开发环境搭建** - **MyEclipse**:一款集成开发环境,支持多种语言开发,特别适合Java Web项目。 - **数据库连接**:使用JDBC...
### 配置文件详解 #### 1. web.xml配置 在`web.xml`中配置Struts2过滤器是非常重要的一步,因为这会直接影响到Struts2框架的初始化和请求处理流程。以下是文件中的关键部分: ```xml <filter-name>Struts2 ...