struts.xml文件头部的文件可以参看struts2-core-2.2.3.jar包中的 struts-default.xml 文件,这个文件规定了诸多struts2文档的基本设置
struts.xml文件中的内容,这文件的名字是固定的,位于项目的src目录下(根据框架的实际规定决定)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
<!-- 请求参数的编码方式 -->
<constant name="struts.i18n.encoding" value="UTF-8"/>
<!-- 指定被struts2处理的请求后缀类型。多个用逗号隔开 -->
<constant name="struts.action.extension" value="action,do,qita"/>
<!-- 当struts.xml改动后,是否重新加载。默认值为false(生产环境下使用),开发阶段最好打开 -->
<constant name="struts.configuration.xml.reload" value="true"/>
<!-- 是否使用struts的开发模式。开发模式会有更多的调试信息。默认值为false(生产环境下使用),开发阶段最好打开 -->
<constant name="struts.devMode" value="false"/>
<!-- 设置浏览器是否缓存静态内容。默认值为true(生产环境下使用),开发阶段最好关闭 -->
<constant name="struts.serve.static.browserCache" value="false" />
<!-- 包含的其他配置文件 -->
<include file="struts-method.xml"></include>
</struts>
struts-method.xml 是被struts.xml引用的
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
<!-- struts-default-package -->
<package name="default" extends="struts-default" namespace="/">
<!-- 定义拦截器 -->
<interceptors>
<!-- 定义单个拦截器 -->
<interceptor name="myinterceptors" class="demo.interceptor.TestInterceptor">
<!-- 定义默认参数 -->
<param name="name">李明</param>
</interceptor>
<!-- 设置自己的拦截器栈 -->
<interceptor-stack name="myStack"><!--
自己写的拦截器
<interceptor-ref name="myinterceptors"></interceptor-ref>
框架自带的拦截器
<interceptor-ref name="defaultStack"></interceptor-ref>
-->
<interceptor-ref name="validation"></interceptor-ref>
</interceptor-stack>
</interceptors>
<!-- 通配符方法调用配置 -->
<action name="*" class="demo.action.TestAction" method="{1}">
<!--<interceptor-ref name="myStack"></interceptor-ref>
--><result name="success">/success.jsp</result>
</action>
</package>
</struts>