好记性不如赖笔头…………
Struts2的配置文件
1、加载时机:
当应用被tomcat加载的时候,struts2的配置文件就已经被加载过了。
2、加载顺序
顺序 配置文件名 所在位置 说明
1 default.properties struts2-core-2.3.15.3.jar\org\apache\struts2 不能修改
2 struts-default.xml struts2-core-2.3.15.3.jar 不能修改
3 strtuts-plugin.xml 在struts2提供的插件jar包中 不能修改
4 struts.xml 我们的应用中 我们修改的:推荐
5 struts.properties 我们的应用中 我们修改的
6 web.xml 我们的应用中 我们修改的,可以给过滤器配置参数
----------------------------------------------------------------------------------------
**常量名** **常量值** **说明**
struts.i18n.encoding UTF-8 应用中使用的编码
struts.objectFactory.spring.autoWire name 和spring框架整合有关
struts.multipart.parser jakarta 指定文件上传用的组件
struts.multipart.maxSize 2097152 文件上传总文件大小限制:2M
struts.action.extension action 能进入Struts2框架内部的url地址后缀名。多个值用逗号分隔
struts.enable.DynamicMethodInvocation false 是否允许动态方法调用
struts.devMode false 是否是开发模式。开发模式:改了配置文件,不需要重启。输出更多的错误信息。开发阶段建议为true。
struts.ui.theme xhtml 页面展示用的主题
常量的修改,在struts.xml中,修改方法如下:
<constant name="struts.devMode" value="true"></constant>
<constant name="struts.action.extension" value="do"></constant>
常量的修改,在struts.properties中的修改方法如下:
1、在src目录下创建struts.properties文件
2、文件中的书写格式为:name=value
修改示例
struts.action.extension=aac
struts.devMode=true
常量的修改,在web.xml中的修改方法如下:
在web.xml中的过虑器中写入以下代码:
<init-param>
<param-name >struts.action.extension</param-name>
<param-value>asp</param-value>
</init-param>
完整示例如下:
<filter>
<filter-name>Struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<init-param>
<param-name >struts.action.extension</param-name>
<param-value>asp</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
注意:
1、Struts2提供了两种配置的方式。一种是key=value的方式,即使用.properties文件。另一种是xml文件配置。我们推荐使用xml文件(它能描述层级关系)。
2、当多个配置文件中,有相同的参数,后面的会把前面的值给覆盖了。