Action中<package>配置详解

来源:互联网 发布:河南虫虫网络 编辑:程序博客网 时间:2024/06/05 23:57

package元素用于定义struts.xml中的包配置,<package>中可以定义action和拦截器等。使用package时一般须定义以下几个属性。

1、name

这个属性必须指定,代表包的名称,由于struts.xml可以定义不同不同的package,而且它们之间还可以相互引用,所以必须指定名称。

2、extends

这个属性是可选的,表示该包继承了其他的包,但是包信息的获取是配置文件中的先后顺序进行的,也就是说父包必须在子包之前定义。一般情况下都会继承一个名为“struts-default”的包,这个包是struts 2内置的。

3、namespace

该属性可选,用来指定一个命名空间,定义命名空间很简单,只要指定“namespace="/*"”就可以了,其中“*”是我们自定的。如果直接指定“"/"”,表示设置命名空间为根命名空间。如果不指定则为默认命名空间“""”。

设置了命名空间之后的页面请求也会发生改变,请求该为“命名空间名字/请求的action名”,此时框架会现在指定的命名空间中查找请求的action名,如果找不到就会在默认的命名空间中查找。当然了,如果你没有改页面请求,还是原来的“请求的action名”这样的请求,框架就会先在根命名空间中查找,如果找不到再去默认命名空间中查找。

4、abstract

该属性是可选的,定义该包是一个抽象包,不能包含<action>配置信息,但可以被继承。(个人感觉不出这个属性的用途,有人知道的话请告诉我。)

原创粉丝点击