struts1 module

本文介绍了一种在大型系统开发中使用Struts框架时进行模块化配置的方法,通过拆分struts-config文件来提高开发效率及维护性。具体包括两种方式:一是按模块配置多个合法的struts配置文件,二是为每个模块配置独立的配置文件。

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

在一个比较大的系统开发过程中,对于struts-config文件,我们希望能按模块分成多个配置,这样不同开发人员可以只关注自己的struts configuration文件,在调试时可以不加载其他模块的配置文件,更容易维护。

方法:

(1)按模块配置多个config文件,每个都是合法的struts configuration文件。如:struts-main.xml,struts-module1.xml,struts-module2.xml。可以把一些基本的配置信息放在一个文件中,如可以将message-resources, plug-in等都放在struts-main.xml中。其他文件中配置和module相应的action-mapping, form-beans等。在web.xml中配置ActionServlet时

<init-param>

<param-name>config</param-name>

<param-value>/WEB-INF/struts-main.xml,/WEB-INF/struts-module1.xml,/WEB-INF/struts-module2.xml</param-value>

</init-param>

改方法每个config文件中配置的path等url,如:<forward name="index" path="/index.jsp" />都是相对于application-context的。即该方法和单个struts-config.xml的配置方法完全一样,只是将一个文件分成多个文件而已。

(2)按module配置,每个module配置一个config文件,每个文件都是合法的独立的config文件。文件中的path等url都是相对于当前module的。ActionServlet配置如下:

    <init-param>
        <param-name>config</param-name>
        <param-value>/WEB-INF/struts-default.xml</param-value>
     </init-param>
     
     <init-param>
        <param-name>config/module1</param-name>
        <param-value>/WEB-INF/module1.xml</param-value>
     </init-param>

   <init-param>
        <param-name>config/module2</param-name>
        <param-value>/WEB-INF/module2.xml</param-value>
     </init-param>

每个module相当于一个子applition,所以config文件中的信息都是 相对于一个module而言的。

module间跳转,如module1到module2:

i. <forward name="toModule2"
   contextRelative="true"
   path="/module2/index.do"
   redirect="true" />

contextRelative="true"  指名path是相对于application context的(不是module)。path中要加module2。

ii. 用SwithAction,配置SwithAction

访问url用 /changeModule.do?prefix=Module2&page=/index.do

prefix指名到哪个module, page指名module2中的url

用(2),我们的jsp页面要按照module存放,如APP/module1,APP/module2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值