- 浏览: 368330 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (252)
- struts1.3 (18)
- spring2.0 (6)
- html & Css (30)
- soap (0)
- hibernate3.3.2 (3)
- JQuery1.4 (11)
- wsdl (0)
- Amazon EC2 (3)
- jsp (4)
- myeclipse skill (9)
- linux (1)
- servlet (1)
- english (7)
- Ajax (5)
- 常识 (3)
- 生活 (6)
- 工具 (42)
- 期货 & 外汇 (4)
- tomcat (2)
- ext (1)
- java se (11)
- java ee (1)
- it行业知识 (6)
- plsql developer skill (2)
- apache commons logging (1)
- apache commons HttpClient (1)
- apache commons codec (1)
- windows7 skill (3)
- 数据库设计 (2)
- oracle (5)
- junit (1)
- xStream (2)
- jdom (1)
- dwr (1)
- erp (2)
- javascript (4)
- Base64 (1)
- Ant (0)
- Apache CXF (1)
- 美剧 Friends season one (1)
- 设计模式 (1)
- android (0)
- html5 (0)
- SVN Skill (2)
- FindBugs (1)
- 云计算 (1)
- SAP (35)
- 演讲 (1)
- PMP (1)
- Velocity1.7 struts2.0 (1)
- svn (1)
最新评论
-
hijackwust:
最次的方法,没有之一
让一个工程并存jar包不同版本 -
手写白:
...
让一个工程并存jar包不同版本 -
wqsmd1:
连接不会关,怎么弄
Struts2 + JasperReports4 + DB2 Demo -
tntxia:
楼主,怎么没有放keymaker.jar这个包啊
Aqua Data Studio 破解及解决乱码说明 -
mrsea2010:
楼主,按照你的方法,点击联接,我都不能显示出页面,直接报404 ...
Struts2 + JasperReports4 + DB2 Demo
<zt>http://blog.csdn.net/FutureInHands/archive/2006/11/15/1385681.aspx
Struts 框架在启动时会读入其配置文件,根据它来创建和配置各种 Struts 组件。 Struts 配置文件使得开发者可以灵活地组装和配置各个组件,提高了应用软件的可扩展性和灵活性,可以避免硬编码。 Struts 配置文件是基于 XML 的。
· 1 。 org.apache.struts.config 包
在 Struts1.1 中加入了 org.apache.struts.config 包。在 Struts 应用启动时,会把 Struts 配置文件中的配置信息读入到内存中,并把他们存放在 cofnig 包中相关 JavaBean 类的实例中。
org.apache.struts.config 包中的每一个类都和 Struts 配置文件中特定的配置元素对应。
在 Struts 框架完成了对配置文件的验证和解析后,就把配置文件中的信息存放在这些类的实例中。这些类的实例可以充当配置信息的运行时容器, Struts 组件可以方便地通过他们来获取配置信息。
org.apache.struts.config.ModuleConfig 在 Struts 框架中扮演了十分重要的角色。它是整个 org.apache.struts.config 包的核心,在 Struts 应用运行时用来存放整个 Struts 应用的配置信息。如果有多个子应用,每个子应用都会有一个 ModuleConfig 对象。 ModuleConfig 和 Struts 配置文件的根元素 <struts-config> 对应。 <struts-config> 根元素中包含 <form-bean> 、 <action> 和 <forward> 等一系列子元素,因此 ModuleConfig 中包含了和每个子元素对应的配置类实例。
org.apache.struts.config.ConfigRuleSet 类的功能不同于其他类,它包含了解析 Struts 配置文件所需要的一组规则。在应用启动时,该类负责构造 org.apache.struts.config 包中其他用于保存配置信息的 JavaBean 类的实例。
下面分别介绍 Struts 配置文件中每个元素的用法。
· 2 。 <struts-config> 元素
<struts-cofnig> 元素是 Struts 配置文件的根元素,和它对应的配置类为 org.apache.struts.config.ModuleConfig 类。 <struts-config> 元素有 8 个子元素。
在 Struts 配置文件中,必须按照它的 DTD 指定的先后顺序来配置 <struts-config> 元素的各个子元素,如果颠倒了这些子元素在配置文件中的顺序,在 Struts 应用启动时就会生成 XML 解析错误。
· 3 。 <data-sources> 元素
<data-sources> 元素用来配置应用所需要的数据源。数据源负责建立和特定数据库的连接,许多数据源采用连接池机制实现,以便提高数据库访问性能。 Java 语言提供了 javax.sql.DataSource 接口,所有的数据源必须实现该接口。许多应用服务器和 Web 容器提供了内在的数据源组件,很多数据库厂商也提供了数据源的实现。
<data-sources> 元素包含零个,一个或多个 <data-source> 子元素。 <data-source> 元素用于配置特定的数据源,它可以包含多个 <set-property> 子元素。 <set-property> 元素用于设置数据源的各种属性。
<data-source> 元素的 type 属性用来指定数据源的实现类。开发者应该根据实际应用的需要来选用合适的数据源实现。
配置了数据源后,就可以在 Action 类中访问数据源。在 org.apache.struts.action.Action 类中定义了 getDataSource(HttpRequest) 方法,它用于获取数据源对象的引用。
也可以在配置文件中声明多个数据源,此时需要为每一个数据源分配唯一的 key 值,通过该值来标识特定的数据源。
· 4 。 <form-beans> 元素
<form-beans> 元素用来配置多个 ActionForm Bean 。 <form-beans> 元素包含零个或多个 <form-bean> 子元素。每个 <form-bean> 元素又包含多个属性。
<form-bean> 元素的属性
属性
|
描述
|
className
|
指定和 <form-bean> 元素对应的配置类,默认值为 org.apache.struts.config.FormBeanConfig 。如果在这里设置自定义的类,该类必须扩展 FormBeanConfig 类
|
name
|
指定该 ActionForm Bean 的唯一标识符,整个 Struts 框架用该标识符来引用这个 bean 。该属性是必需的。
|
type
|
指定 ActionForm 类的完整类名(类的报名也包含在内),该属性是必需的
|
如果配置动态 ActionForm Bean ,还必须配置 <form-bean> 元素的 <form-property> 子元素。 <form-property> 元素用来指定表单字段,它有四个属性。
<form-property> 元素的属性
属性
|
描述
|
className
|
指定和 <form-property> 元素对应的配置类,默认值为 org.apache.struts.config.FormPropertyConfig
|
initial
|
以字符串的形式设置表单字段的初始值。如果没有设置该属性,则基本类型的表单字段的默认值为 0 ,对象类型的表单字段的默认值为 null
|
name
|
指定表单字段的名字。该属性是必需的
|
type
|
指定表单字段的类型。如果表单资源为 Java 类,必须给出完整的类名。该属性是必需的。
|
· 5 。 <global-exceptions> 元素
<global-exceptions> 元素用于配置异常处理。 <global-exceptions> 元素可以包含零个或者多个 <exception> 元素。
<exception> 元素用来设置 Java 异常和异常处理类 org.apache.struts.action.ExceptionHandler 之间的映射。
<exception> 元素的属性
属性
|
描述
|
className
|
指定和 <exception> 元素对应的配置类。默认值为 org.apache.struts.config.ExceptionConfig
|
handler
|
指定异常处理类。默认值为 org.apache.struts.action.ExceptionHandler
|
key
|
指定在 Resource Bundle 中描述该异常的消息 key
|
path
|
指定当异常发生时的转发路径
|
scope
|
指定 ActionMessages 实例的存放范围,可选值包括 request 和 session ,此项的默认值为 request
|
type
|
指定所需处理的异常类的名字。此项是必需的
|
bundle
|
指定 Resource Bundle
|
· 6 。 <global-forwards> 元素
<global-forwards> 元素用来声明全局的转发关系。 <global-forwards> 元素由零个或者多个 <forward> 元素组成。 <forward> 元素用于把一个逻辑名映射到特定的 URL 。通过这种方式, Action 类或者 JSP 文件无需要指定实际的 URL ,只要指定逻辑名就能实现请求转发或者重定向,这可是减弱控制组件和视图组件之间的耦合,并且有助于维护 JSP 文件。
<forward> 元素的属性
属性
|
描述
|
className
|
和 <forward> 元素对应的配置类,默认值为 org.apache.struts.action.ActionForard
|
contextRelative
|
如果此项为 true ,表示当 path 属性以“ / ”开头时,给出的是相对于当前上下文的 URL 。此项的默认值为 false
|
name
|
转发路径的逻辑名。此项是必需的
|
path
|
指定转发或重定向的 URL 。此项是必需的,必需以“ / ”开头。当 contextRelative 属性为 false 时,表示 URL 路径相对于当前应用 (application-relative) ;当 contextRelative 属性为 true 时,表示 URL 路径相对于当前上下文 (context-relative)
|
redirect
|
当此项为 true 时,表示执行重定向操作;当此项为 false 时,表示执行请求转发操作。此项默认值为 false
|
· 7 。 <action-mappings> 元素
<action-mappings> 元素包含零个或者多个 <action> 元素。 <action> 元素描述了从特定的请求路径到相应的 Action 类的映射。
在 <action> 元素中可以包含多个 <exception> 和 <forward> 子元素,他们分别配置局部的异常处理及请求转发仅被当前的 Action 所访问。
在 <global-exceptions> 元素中定义的 <exception> 子元素代表全局的异常配置。在 <global-forwards> 元素中定义的 <forward> 子元素代表全局的请求转发。在不同位置配置 <exception> 和 <forward> 元素的语法和属性是一样的。
<action> 元素的属性
属性
|
描述
|
attribute
|
设置和 Action 关联的 ActionForm Bean 在 request 或 session 范围内的属性 key 。例如,假定 Form Bean 存在于 request 范围内,并且此项为“ myBean ”,那么 request.getAttribute(“MyBean”) 就可以返回该 Bean 的实例。此项为可选项。
|
className
|
和 <action> 元素对应的配置元素。默认值为 org.apache.struts.action.ActionMapping
|
forward
|
指定转发的 URL 路径
|
include
|
指定包含的 URL 路径
|
input
|
指定包含输入表单的 URL 路径。当表单验证失败时,将把请求转发到该 URL
|
name
|
指定和该 Action 关联的 ActionForm Bean 的名字。该名字必需在 <form-bean> 元素中定义过。此项是可选项
|
path
|
指定访问 Action 的路径,它以“ / ”开头,没有扩展名
|
parameter
|
指定 Action 的配置参数。在 Action 类的 execute() 方法中,可以调用 ActionMapping 对象的 getParameter() 方法来读取该配置参数
|
roles
|
指定允许调用该 Action 的安全角色。多个角色之间以逗号隔开。在处理请求时, RequestProcessor 会根据该配置项来决定用户是否有调用 Action 的权限
|
scope
|
指定 ActionForm Bean 的存在范围,可选值为 request 和 session 。默认值为 session
|
type
|
指定 Action 类的完整类名
|
unknown
|
如果此项为 true ,表示可以处理用户发出的所有无效的 Action URL 。默认值为 false
|
validate
|
指定是否要先调用 ActionForm Bean 的 validate() 方法。默认值为 true
|
提示: <action> 元素的 forward 、 include 和 type 属性相互排斥,也就是说只能设置其中的一项。 forward 属性的作用和 org.apache.struts.actions.ForwardAction 类相同。 Include 属性的作用和 org.apache.struts.actions.IncludeAction 类相同。
如果在 <action> 元素中定义了局部的 <forward> 元素,它的优先级别高于全局的 <forward> 元素。
<Action> 的 forward 属性和 <forward> 子元素是两个不同的概念。 Forward 属性指定和 path 属性匹配的请求转发路径。
· 8 。 <controller> 元素
<controller> 元素用于配置 ActionServlet 。
<controller> 元素的属性
属性
|
描述
|
bufferSize
|
指定上载文件的输入缓冲的大小。该属性为可选项,默认值为 4096 。
|
className
|
指定和 <controller> 元素对应的配置类。默认值为 org.apache.struts.config.ControllerConfig 。
|
contentType
|
指定响应结果的内容类型和字符编码。该属性为可选项,默认值为 text/html 。如果在 Action 和 JSP 网页中也设置了内容类型和字符编码,将会覆盖该设置
|
locale
|
指定是否把 Locale 对象保存到当前用户的 Session 中。默认值为 false
|
processorClass
|
指定负责处理请求的 Java 类的完整类名。默认值为 org.apache.struts.action.RequestProcessor 。如果把此项设置为自定义的类,那么应该保持该类扩展了 org.apache.struts.action.RequestProcessor 类
|
tempDir
|
指定处理文件上传的临时目录。如果此项没有设置,将采用 Servlet 容器为 Web 应用分配的临时工作目录
|
nochache
|
如果为 true ,在响应结果中将加入特定的头参数: Pragma , Cache-Control 和 Expires ,防止页面被存储在客户浏览器的缓存中。默认值为 false
|
如果应用包含多个子应用,可以在每个子应用的 Struts 配置文件中配置 <controller> 元素。这样,尽管这些子应用共享同一个 ActionServlet 对象,但是它们可以使用不同的 RequestProcessor 类。
· 9 。 <message-resources> 元素
<message-resources> 元素用来配置 Resource Bundle , Resource Bundle 用于存放本地化消息文本。
<message-resources> 元素的属性
属性
|
描述
|
className
|
和 <message-resources> 元素对应的配置类。默认值为 org.apache.struts.config.MessageResourcesConfig
|
factory
|
指定消息资源的工厂类。默认值为 org.apache.struts.util.PropertyMessageResourcesFactory 类
|
key
|
指定 Resource Bundle 存放在 ServletContext 对象中时采用的属性 key 。默认值为由 Globals.MESSAGES_KEY 定义的字符串常量。只允许有一个 Resource Bundle 采用默认的属性 key
|
null
|
指定 MessageResources 类如何处理未知的消息 key 。如果此项为 true ,将返回空字符串。如果此项为 false ,将返回类似“ ???global.label.missing??? ”的字符串。该属性为可选项,默认值为 true
|
parameter
|
指定 Resource Bundle 的消息资源文件名。
|
许多 Struts 客户化标签都通过 bundle 属性来指定 Resource Bundle ,标签的 bundle 属性和 <message-resources> 元素的 key 属性匹配。
· 10 。 <plug-in> 元素
<plug-in> 元素用于配置 Struts 插件。
<plug-in> 元素的属性
属性
|
描述
|
className
|
指定 Struts 插件类。插件类必需实现 org.apache.struts.action.PlugIn 接口
|
· 11 。配置多应用模块
Struts 1.1 支持多应用模块,即同一个应用包含多个子应用,每个子应用可以处理相关的一组功能。
所有的子应用都共享同一个 ActionServlet 实例,但每个子应用都有单独的配置文件。把应用划分成多个子应用模块包含一下步骤:
(1) 为每个子应用传见单独的 Struts 配置文件。
(2) 在 web.xml 的 ActionServlet 的配置代码中添加每个子应用信息。
(3) 采用 <forward> 元素或 SwitchAction 类来实现子应用之间的切换。
发表评论
-
db 设计
2011-09-16 14:57 0sdf asdf -
2BW330_ZH_Col74_FV_Part_A4.part1.rar
2011-03-17 00:48 02BW330_ZH_Col74_ ... -
sap 前3次课
2011-03-13 23:14 0飞 -
vodaplex_c05需求
2010-12-29 00:02 0rt -
DispatchAction用法示例
2010-12-23 16:18 1682*action.java package com.test. ... -
解决web project中用FileInputStream读取properties系统找不到指定的路径
2010-12-17 00:22 5426package com.test.action; imp ... -
input hidden(隐藏域)传值例子
2010-11-21 23:30 0rt -
Struts 的工作流程_ActionServlet 流程图 时序图
2010-10-06 19:35 1600Struts 的工作流程 (1)对于采用Struts框架的 ... -
Struts实现的MVC框架流程图
2010-10-06 19:23 1127Struts实现的MVC框架流程图 -
MVC_notes
2010-10-06 18:42 733(1)MVC模式的目的是实现Web系统的职能分工。 (2)M ... -
<bean:include>
2010-07-06 23:35 818<!-- 这种情况下,会将test.txt内容输出到页 ... -
<bean:header>
2010-07-06 22:53 696主要是获取http头信息用的。 <bean:he ... -
<bean:define>
2010-07-06 21:46 797action里面做处理。 Test test = new T ... -
<bean:page>
2010-06-28 00:31 846Action中的excute写入request.setAttr ... -
<bean:cookie>
2010-06-27 23:04 759在继承Action的excute方法中 //bean:c ... -
filter_setEncoding_note
2010-06-22 00:34 825(1)通过struts内部的RequestProcessor来 ... -
login_demo
2010-06-21 23:40 701note: (1)注意几种action用法。 Object ... -
test
2010-05-10 13:15 0test -
bean:message
2010-03-17 00:03 959*.jsp <%@taglib uri="h ... -
struts_doc(2)
2010-03-16 00:53 813...
相关推荐
### Struts配置文件详解 #### 一、概述 Struts框架是Java Web开发中的一个重要工具,它使用MVC(Model-View-Controller)设计模式来组织应用逻辑,从而提高代码的可维护性和可读性。Struts框架的核心是通过两个XML...
### Struts配置文件详解 #### 一、Struts配置文件的重要性与作用 Struts框架作为Java Web开发领域中的一种流行MVC(Model-View-Controller)框架,它提供了一种结构化的方式来构建Web应用程序。在Struts框架中,`...
### JSP Struts配置文件详解 #### 一、概述 在深入探讨`struts-config.xml`文件中的各项配置之前,我们需要了解Struts框架的基本概念及其配置文件的重要性。Struts是基于MVC(Model-View-Controller)设计模式的...
Struts配置文件是Struts框架的核心组成部分,它定义了应用程序的行为和组件间的交互方式。配置文件基于XML格式,使得开发者可以灵活地配置ActionForm、Action、Forward等元素,以实现业务逻辑与视图的分离,增强应用...
Struts应用的配置 多应用模块的配置 Struts配置文件 多应用模块的划分有助于应用的并行开发,提高效率
在深入了解Struts2的配置细节之前,我们先来简要概述一下Struts2框架的核心特点及其配置文件的基本结构。Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web应用开发框架。它通过一系列的配置文件来...
### Struts配置文件详解 #### 一、Struts配置文件:`struts-config.xml` `struts-config.xml`是Struts框架的核心配置文件之一,它主要用于定义应用中的表单对象、动作映射以及转发规则等。 ##### 1. `...
### Struts2配置文件详解 #### 一、引言 在Java Web开发中,Struts2框架因其灵活性和强大的功能而被广泛采用。Struts2框架的配置主要通过多个XML文件来实现,这些配置文件定义了应用程序的行为和结构。本文将详细...
"Struts2 中 Struts.xml 配置文件详解" Struts2 中的 Struts.xml 配置文件是 Struts2 框架的核心配置文件,用于定义应用程序的行为和结构。在 Struts.xml 文件中,我们可以定义 package、action、interceptor、...
### Struts.xml配置文件详解 #### 一、Struts配置文件概述 在Struts框架中,`struts.xml`配置文件扮演着极其重要的角色。它主要用于定义应用中的各种配置信息,包括但不限于包(Package)、拦截器(Interceptor)...
struts2 配置文件详解 ,配置struts2 action和strtus1是不一样的,需要特殊处理一下
- 这是Struts配置文件的根元素,其配置类为org.apache.struts.config.ModuleConfig。该元素下有8个子元素,每个都扮演着不同的角色,如数据源配置、全局异常处理、全局转发等。 #### 2. **Data-Sources元素** - `...
struts-config配置文件详解
### 详解Struts1的配置文件 #### 一、引言 在Java Web开发中,Struts1框架作为MVC架构的一种实现,被广泛应用于构建动态网站和企业级应用程序。Struts1的核心功能之一在于其强大的配置文件机制,通过XML格式的配置...