您的位置:首页 > 编程语言 > Java开发

[搬家文]struts2主要的配置文件提要[Struts.xml]

2008-08-13 20:02 585 查看
本文记录struts2主要的配置文件,存放位置,和注意点

(实际上,这些配置文件都是在class文件夹下起作用,不过凡是放在src文件夹下的,都会在eclipse编译时复制到对应的class文件夹。)

配置文件名 存放位置 备注

struts.xml src文件夹下 struts2默认配置文件

l 可通过<include>来包含别的struts配置文件。

l 在<package>中继承其他package可以拥有其他package的配置。

l 每个action最好加一个名为"input"的<result>,为出错默认的返回值

l 关于<package>的继承:

如果一个package要继承另一个package,则必须把另一个package所在的.xml配置文件include进来。只有一个例外,就是继承structs-default包时,不需要加载struts-default.xml。 因为struts.xml是默认包含了struts-default.xml。

在package继承时,package的先后是没有关系的,前面的package一样能继承后面的package

(貌似有本"权威指南"说这个还是拦截器配置,是顺序,有先后的,至少我的测试,package继承绝对没有先后之分)

请看一个例子,其中有三个配置文件:

struts-base.xml,struts-middle.xml,和struts.xml

struts-base.xml配置片断

<struts>

<package name="base" extends="struts-default" abstract="true">

</package>

</struts>

struts-middle.xml配置片断

<struts>

<package name="middle" extends="base" abstract="true">

</package>

</struts>

struts.xml配置片断

<struts>

<package name="Registaction" extends="top">

<action></action>

</package>

<package name="top" extends="middle">

</package>

<include file="struts-middle.xml"></include>

<include file="struts-base.xml"></include>

</struts>

可以看到struts.xml中的配置,package继承的顺序完全是和package定义的位置相反的,不过执行并没有问题。

另外注意一点,struts-base.xml中,名base的package直接继承了struts-default,而没有引入 struts-default.xml。 你可能会由此以为每个配置文件都会自动包含struts-default.xml。不过我个人认为,这是因为struts.xml中同时包括了struts-default.xml和struts-base.xml,这两个文件其实是在同一个配置文件中,所以base这个package能直接继承struts-default也不奇怪了,middle 和 base 这两个package也是同理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: