Struts2 入门教程 指定多个配置文件

本文详细介绍Struts框架中如何通过模块化配置优化Struts.xml文件,实现更清晰的代码组织结构。通过将不同功能模块的配置分别放入独立的XML文件,并在主配置文件中引用,可以有效降低Struts.xml的复杂度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下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">


<struts>

    <package name="default" namespace="/" extends="struts-default" strict-method-invocation="false">
    	<action name="helloWorld" class="com.test.action.HelloWorldAction">
    		<result name="helloWorld">helloworld.jsp</result>
    	</action>
    	
    	<!-- 指定方法 -->
    	<action name="addAction" method="add" class="com.test.action.HelloWorldAction">
    		<result name="add">add.jsp</result>
    	</action>
    	
    	<action name="updateAction" method="update" class="com.test.action.HelloWorldAction">
    		<result name="update">update.jsp</result>
    	</action>
    	
    	<!-- 通配符指定方法 -->
    	<action name="helloWorld_*" method="{1}"  class="com.test.action.HelloWorldAction">
    		<result name="helloWorld">/helloworld.jsp</result>
    		<result name="add">/add.jsp</result>
    		<result name="update">/update.jsp</result>
    	</action>
    </package>
    
    <constant name="struts.enable.DynamicMethodInvocation" value="false"></constant>
</struts>

在这里插入图片描述
模块拆分struts.xml文件如下:
helloworld.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">


<struts>

    <package name="helloWorld" namespace="/" extends="struts-default" strict-method-invocation="false">
    	<action name="helloWorld" class="com.test.action.HelloWorldAction">
    		<result name="helloWorld">helloworld.jsp</result>
    	</action>
    	
    	<!-- 通配符指定方法 -->
    	<action name="helloWorld_*" method="{1}"  class="com.test.action.HelloWorldAction">
    		<result name="helloWorld">/helloworld.jsp</result>
    		<result name="add">/add.jsp</result>
    		<result name="update">/update.jsp</result>
    	</action>
    </package>
    
</struts>

test.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">


<struts>

    <package name="test" namespace="/" extends="struts-default" strict-method-invocation="false">
    	<!-- 指定方法 -->
    	<action name="addAction" method="add" class="com.test.action.HelloWorldAction">
    		<result name="add">add.jsp</result>
    	</action>
    	
    	<action name="updateAction" method="update" class="com.test.action.HelloWorldAction">
    		<result name="update">update.jsp</result>
    	</action>
    </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">


<struts>

    <include file="helloworld.xml"></include>
    <include file="test.xml"></include>
    <constant name="struts.enable.DynamicMethodInvocation" value="false"></constant>
</struts>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值