struts.xml

   Struts框架的核心配置文件就是struts.xml配置文件,该文件主要负责管理Struts 2框架的业务控制器Action。
在默认情况下,Struts 2框架将自动加载放在WEB-INF/classes路径下的struts.xml文件。在大部分应用里,随着应用规模的增加,系统中Action数量也大量增加,导致struts.xml

配置文件变得非常臃肿。
为了避免struts.xml文件过于庞大、臃肿,提高struts.xml文件的可读性,我们可以将一个struts.xml配置文件分解成多个配置文件,然后在struts.xml文件中包含其他配置文件


下面的struts.xml文件中就通过include手动导入了一个配置文件:struts-part1.xml文件,通过这种方式,就可以将Struts 2的Action按模块配置在多个配置文件中。


Struts2也给出了struts.xml文件的DTD(Document Type Definition,文档类型定义)。在Struts2的核心类库(struts2-core-2.0.11.jar)中有一个struts-2.0.dtd文件该文件就

上struts.xml和struts-default.xml文件的DTD。

 

在编写struts.xml文件时,除了要按照struts-2.0.dtd定义的元素结构使用配置元素外,还要记得为sttruts.xml文件加上文档类型声明同,如下:

<!DOCTYPE struts PUBLIC

“-//Apache Software Foundation//DTD Strus Configuration 2.0//EN”

“http://strus.apache.org/dtds/struts-2.0.dtd”>

 

 

Struts-2.0.dtd

<?xml version=”1.0” encoding=”UTF=8”?>

<!--START SNIPPET : strutsDtd-->

<!--

 Struts configuration DTD. Use the following DOCTYPE

 

<!DOCTYPE struts PUBLIC

“-//Apache Software Foundation//DTD Struts Configturaion 2.0//EN”

“http://struts.apache.org/dads/struts-2.0.dtd”>

-->

 

<!ELEMENT struts (package|include|bean|constant)*>

 

<!ELEMENT  package (resutl-types?,interceptors?,default-interceptor-ref?,default-action-ref?,

Default-action-ref?,default-class-ref?,global-results?,global-exception-mapping?,action*)>

<!ATTLIST package

name CDATA #REQUIRED

extends CDATA #IMPLIED

namespace   CDATA #IMPLIED

abstract CDATA #IMPLIED

exteralReferenceResolver NMTOKEN #IMPLIED

>

 

<!ATTLIST result-type (result-type+)>

 

<!ATTLIST result-type

name CDATA #REQUIRED

class CDATA #REQUIRED

default (true|false)”false”>

>

 

<!ELEMENT interceptors(interceptor|interceptor-stack)+>

 

<!ELEMENT interceptor (param*)>

<!ATTLIST interceptor

 name CDATA #REQUIRED

class CDATA #REQUIRED

>

 

<!ELEMENT interceptor-stack  (interceptor-ref*)>

<!ATTLIST interceptor-stackj

name CDATA #REQUIRED

>

 

<!ELEMENT default-interceptor-stack  (interceptor-ref*)>

<!ATTLIST default-interceptor-stackj

name CDATA #REQUIRED

>

 

<!ELEMENT default-action-ref  param*)>

<!ATTLIST   default- interceptor-ref

name CDATA #REQUIRED

>

 

<!ELEMENT default-class-ref  param*)>

<!ATTLIST   default- class-ref

name CDATA #REQUIRED

>

 

<!ElEMENT  global-results   (result+)>

<!ELEMENT  global-exception-mapping(exception-mapping+)>

<!ELEMENT  action (parm|result|interceptor-ref/exception-mapping)>

<!ELEMENT action

Name CDATA #REQUIRED

Class CDATA #IMPLIED

Method CDATA #IMPLIED

Converter CDATA #IMPLIED

>

 

<!ELEMENT param(#PCDATA|param)*>

<!ATTLIST result-type

name CDATA #IMPLIED

type  CDATA #IMPLIED

>

 

<!ATTLIST  exception-mapping (#PCDATA|param)*>

<!ATTLIST exception-mapping

Name CDATA #IMPLIED

Exception CDATA #REQUIRED

Result CDATA #REQUIRED

>

 

<!ELEMENT include(#PCDATA)*>

<!ATTLIST include

 File CDATA #REQUIRED

>

 

<!ELEMENT bean (#PCDATA)>

<!ATTLIST bean

Type CDATA #IMPLIED

Name CDATA #IMPLIED

Class CDATA #REQUIRED

Scope CDATA #IMPLIED

Static CDATA #IMPLIED

Option CDATA #IMPLIED

>

 

<!ELEMENT constant (#PCDATA)>

<!ATTLIST constant

Type CDATA #REQUIRED

Name CDATA #REQUIRED

>

<!—END SNIPPET :strutsDtd-->

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值