struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
<!-- 这一个xml就是把所有的xml进行整合到一个xml中 -->
<struts>
<include file="struts-default.xml"></include>
<!--把每个需要配置的xml里面的公共部分抽取出来放在struts-base.xml中 -->
<include file="struts-base.xml"></include>
<!-- 项目的一个模块对应的xml,如果分多个模块就需要配置多个 -->
<include file="struts-sy.xml"></include>
</struts>
---------------------
struts-base.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
<!-- 每个xml抽取的公共部分 -->
<struts>
<!-- constant常量 -->
<!-- 字符集 -->
<constant name="struts.i18n.encoding" value="UTF-8" />
<!-- struts.devMode开发模式 可以往jsp页面输出错误信息 -->
<constant name="struts.devMode" value="true" />
<!-- 热加载 -->
<constant name="struts.configuration.xml.reload" value="true" />
<constant name="struts.i18n.reload" value="true" />
<!-- 动态方法调用 -->
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
<package name="base" extends="struts-default" abstract="true">
<!-- struts2以后动态方法调用都需要配置全局的正则,因为动态方法调用不安全(效率提高) -->
<global-allowed-methods>regex:.*</global-allowed-methods>
</package>
</struts>
---------------------
项目模块 struts-模块名.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
<!-- 模块对应的xml -->
<struts>
<!-- 虚拟包 在tomcat中开辟出来的 找配置的子控制器-->
<!--
name : 给包取名,用于包继承
namespace : 用于jsp页面调用
-->
<package name="sy" extends="base" namespace="/sy">
<action name="helloAction" class="com.zking.struts.web.HelloAction">
<result name="success">/success.jsp</result>
</action>
<!--
method : 调用子控制器中的方法
如果没填写默认调用execute方法
calAction_* {1}:表示获得第一个*的值
-->
<action name="calAction_*" class="com.zking.struts.web.CalAction" method="{1}">
<result name="rs">/rs.jsp</result>
</action>
<action name="paremAction" class="com.zking.struts.web.ParemAction">
<result name="success">/success.jsp</result>
</action>
<action name="caseAction" class="com.zking.struts.web.CaseAction">
<result name="success">/success.jsp</result>
</action>
<action name="ognlAction" class="com.zking.struts.web.OgnlAction">
<result name="success">/success.jsp</result>
</action>
</package>
</struts>
---------------------