Struts.xml作为struts2的一个非常重要的一个配置文件,掌握他对于灵活使用struts来说有很大好处。
这篇文章我准备将struts2中对于该文件的配置详详细细地剖析一遍。
一、从最简单开始
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
</struts>
这是最简单的struts配置文件,该文件内容应该是任何一个struts2的配置文件里面都应该包含的内容,因此放在这里,在任何需要的时候,直接复制粘贴到自己的工程里面就可以了。
struts.xml的配置文件应该被放置在src目录底下,这样就可以被web工程找到,该文件才能生效。
二、struts标签中可以直接包含的内容
在struts.xml定义文件中有如下定义
<!ELEMENT struts (package|include|bean|constant)*>
说明了该标签中可以包含package、include、bean以及contant标签
2.1、package标签
package是非常重要的标签,这个标签在任何一个sturts配置文件中似乎都是必不可少的,因为他是包含着action的标签,他管理着对应的一组Action、Result、Interceptor。Package有些像对象,可以继承其他的Package,也可以被其他package继承,甚至可以定义抽象的Package。
先请看Package的一个定义
<package name="default" namespace="/" extends="struts-default"></package>
Package标签里面有以下几个属性,各个属性的说明先参考以下再来细细说明:
属性 |
是否必须 |
说明 |
name |
是 |
Package的表示,为了让其他的package引用,一个唯一性id类似的变量 |
extends |
否 |
表示继承哪个package,该处如果有值的话就是另外一个Package的name |
namespace |
否 |
namespace是表示一个访问路径相关的配置
|
abstract |
否 |
表示该Package是抽象的。可以不包含Action的配置
|
注意:
struts.xml文件是自上而下解析的
2.1.1、name除了在package里面被引用的时候被用到以外,没有更多的需要了解的地方了。
2.2.2、由于struts.xml文件时自上而下解析的,因此在这里配置extends的时候需要弄清楚,被extends的package是否已经被定义了。
2.2.3、namespace的作用是将Action分成逻辑上不同的模块,这样同java代码里面包的作用就一致起来了,同样的一个index.action如果namespage不同,就是访问的不同的Action,如果用户在页面的地址栏里面敲入了/blog/index.action和/pic/index.action一看就是在访问博客的首页和相册的首页。
2.2、include标签
在web应用中,struts的配置可能是很多很多的,“一不小心”在一项工程里面可能就会有上千行,因此如果可以将这些配置按照功能对其分类,写到不同的文件中就可以使得每一个配置文件都变得相对简单得多,容易维护。include标签的作用也在于此。下面是一个例子:
<struts>
<include file="security.xml"/>
<include file="mainpages.xml"/>
</struts>
2.3、bean标签
该标签先暂缓介绍,如果有人急需的话可以留言,我尽快补充起来
2.4、contant标签
我们先来看下它所存在的形式
<constant name="struts.devMode" value="true" />
contant标签是对于struts中的一些常量进行配置,以name和value的形式来配置,这些常量都可以在struts的另外一个配置文件中(struts.properties)找到。
最经常见到的配置项目以及他们的含义:
<!--允许动态方法调用 称为DMI 这种模式下可以用actionname!methodname.action的方式来访问-->
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
<!-- 这种模式就是可以动态加载,动态修改struts的配置项 -->
<constant name="struts.devMode" value="true" />
当然可以添加更多的配置项,更详细的配置用法说明请参见《struts2的struts.properties配置文件详解》
(写这篇文档是在我个人使用和对struts2的认知以及查看了一些相关文档后做的,里面一定有一些不尽完美的地方,但是我会不断地修正,希望如果大家看了对我这里有什么意见请给我提醒,谢谢)
分享到:
相关推荐
struts-config.xml struts标准配置文件 struts-config
而在Struts框架中,`struts-config.xml`文件扮演着至关重要的角色,它是Struts框架的核心配置文件,用于配置应用程序的各种行为和组件。本文将对`struts-config.xml`中的关键元素进行详细解析,并结合实际示例来帮助...
struts配置文件,用于创建springmvc与struts工程的配置文件,集合加数组获得后台的空间空间空间 空间 空间空了
Struts2的Spring插件会在Struts配置文件(如struts.xml)中定义一个`<package>`,包含`<interceptors>`和`<default-interceptor-ref>`元素,这样Struts2就会知道如何与Spring协作,将Action实例化和依赖注入交给...
struts.xml文件配置解释,对action配置进行说明
Struts.xml文件是Apache Struts 2框架的核心配置文件,它用于定义应用程序的行为、Action映射、结果页面、拦截器等关键组件。在深入讲解struts.xml之前,我们先来了解与之相关的struts.properties文件。 struts....
在Java Web开发中,`struts.xml`, `applicationContext.xml` 和 `web.xml` 是三个至关重要的配置文件,它们各自负责不同的职责,并协同工作来构建一个完整的应用框架。以下是关于这三个配置文件的详细说明。 首先,...
在Struts中,`struts.xml`和`struts.properties`是两个关键的配置文件,它们定义了应用的行为和设置。下面将详细讲解这两个配置文件的内容、用途以及如何配置。 **一、struts.xml配置详解** `struts.xml`是Struts2...
#### 一、Struts配置文件概述 在Struts框架中,`struts.xml`配置文件扮演着极其重要的角色。它主要用于定义应用中的各种配置信息,包括但不限于包(Package)、拦截器(Interceptor)、Action以及结果(Result)等...
通过以上分析可以看出,`struts.xml`文件是Struts2项目的核心配置文件之一,它不仅定义了项目的全局配置,还具体指定了每个Action的行为和返回结果,是Struts2框架中不可或缺的一部分。开发者可以根据实际需求调整...
"Struts2 中 Struts.xml 配置文件详解" Struts2 中的 Struts.xml 配置文件是 Struts2 框架的核心配置文件,用于定义应用程序的行为和结构。在 Struts.xml 文件中,我们可以定义 package、action、interceptor、...
`struts-config.xml`是Struts框架的核心配置文件,它定义了应用的各个组件及其交互方式。下面将详细介绍这个配置文件的主要元素和子元素。 ### 主要元素 1. **`<data-sources>`**: 这个元素用于配置数据源,通常...
Struts-config.xml 配置文件详解 Struts-config.xml 是 Struts 框架的主要配置文件,用于配置 Struts 应用程序的各种设置。在该文件中,可以配置数据源、Form Bean、Action 和插件等信息。下面是 Struts-config.xml...
在Struts2中,`struts.xml`是核心配置文件,它定义了应用的行为、动作、结果和其他组件。为了在Eclipse这样的集成开发环境中获得代码提示和自动完成,我们需要引入DTD(文档类型定义)文件,例如`struts-2.3.dtd`。 ...
在 struts1 框架中,web.xml 文件是必不可少的配置文件之一,它用于配置 Struts 应用程序的核心组件 ActionServlet。本文将详细解释 web.xml 文件中的配置项和相关知识点。 1. 配置 Struts 的 ActionServlet 在 ...
Struts配置文件(通常是`.xml`文件)包含了应用程序的配置信息,比如Action映射、Form Bean定义等。通过将这些配置分散到多个文件中,可以使项目更加模块化和易于维护。 #### 2.2 如何配置多个Struts配置文件 在`...
在Struts2中,注解的引入使得开发者可以摆脱繁琐的`struts.xml`配置文件,实现“零配置”运行。 首先,让我们了解什么是注解(Annotation)。注解是Java提供的一种元数据机制,允许在源代码中嵌入信息,这些信息...
struts.configuration.xml.reload Whether to reload the XML configuration or not 是否加载xml配置(true,false) struts.continuations.package The package containing actions that use Rife continuations ...
在Struts2框架中,配置文件`struts.xml`和`web.xml`是核心部分,它们定义了应用程序的行为和路由规则。随着版本的更新,配置方式也会有所改变。以下是Struts2.5版本中`struts.xml`和`web.xml`配置的更改方法: **1....