Struts2的核心配置文件有两大类共6种方式,按照加载顺序分别说明如下:
第一类:框架内置的配置文件:
1.Struts2框架内置的常量配置文件:default.properties,位于struts-core.jar包的org.apache.struts2包下。作用:定义了一些常量(键值对)。一些功能开关。
2.Struts2框架内置的核心配置文件:struts-default.xml,位于struts-core.jar包下。作用:定义了Bean元素、结果集类型、拦截器等。(在struts2的框架体系中,struts.xml中的package主要是用来实现一些配置的复用,在使用时编写子包来继承struts-default,如此就可以复用struts-default中的一些功能。
3.Struts2框架插件配置文件:struts-plugin.xml,位于每个插件包的根目录。作用:用于扩展插件的一些配置。)随便复制一个struts的插件包到工程中,里面就有struts-plugin.xml。每一个插件包中的struts-plugin.xml配置都不一样
第二大类:用户自定义的配置文件:
1.用户自定义核心文件配置:struts.xml,位于用户工程的src下。作用:用于用户开发的相关配置(分发请求),如配置package、action等。一般都会继承struts-default,即继承struts-default.xml中的配置,否则就无法使用结果集以及拦截器的配置。
2.用户自定义常量配置文件:struts.properties,一般位于用户工程的src下。只能用于配置一些常量(覆盖内置的default.properties中的常量配置)一般也不太用,可以在struts.xml中直接配置常量
3.web.xml中配置struts2常量
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
<param-name>struts.devMode</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
【注意】
1.配置文件加载的顺序问题:后加载的配置文件的配置内容,可以覆盖先加载的配置文件的配置内容。因此,自定义的可以覆盖默认的配置。
2.开发人员主要采用struts.xml(可配置action映射、常量等) 或者 struts.properties (只能配置常量)
以上第一类的3个配置文件都是不能做修改的,全部配置文件的读取顺序为:1、default.properties—2、 struts-default.xml—3、 struts-plugin.xml—4、struts.xml—5、struts.properties—6、web.xml中的常量配置
当然,常量的配置一般不在struts.properties和web.xml中来配置,在struts.xml中配置即可