Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / Struts2为应用指定多个配置文件和动态方法调用以及通配符的使用方法

在开发中一般不会说将所有的配置都放在struts.xml这个一个配置文件中去,因为这样会使得整个配置文件臃肿不堪无法维护,一般来说会进行分模块的进行配置文件的编写。下面来演示一下分模块来进行配置其实很简单,首先在需要的分模块配置文件写出来,比如[java]
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE struts PUBLIC  
  3.     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  
  4.     "http://struts.apache.org/dtds/struts-2.0.dtd">  
  5.   
  6. <struts>  
  7.       
  8.   
  9.     <package name="bird" namespace="/test" extends="struts-default">  
  10.         <action name="helloworld_*" class="com.bird.action.HelloWorld" method="{1}">  
  11.           
  12.             <result name="success">/WEB-INF/jsp/hello.jsp</result>  
  13.         </action>  
  14.     </package>  
  15.       
  16.       
  17.     
  18. </struts>  
然后在struts.xml文件中使用include标签就可以完成将这个配置文件移入里面去的功能[java]
  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE struts PUBLIC  
  3.     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  
  4.     "http://struts.apache.org/dtds/struts-2.0.dtd">  
  5.   
  6. <struts>  
  7.     <constant name="struts.action.extension" value="do,action"></constant>  
  8.   
  9.     <include file="employee.xml"></include>  
  10.     <include file="user.xml"></include>  
  11. </struts>  
在struts.xml文件中一般只是配置一些全局文件需要的东西,比如一些常量。下面来说一下动态方法调用,所谓的动态方法调用其实就是通过地址参数来选择调用哪些方法,而不是默认的execute方法,先看一下代码[java]
  1. package com.bird.action;  
  2.   
  3. public class HelloWorld {  
  4.       
  5.     private String message;  
  6.   
  7.   
  8.     public String getMessage() {  
  9.         return message;  
  10.     }  
  11.   
  12.   
  13.     public void setMessage(String message) {  
  14.         this.message = message;  
  15.     }  
  16.   
  17.       
  18.     public String execute(){  
  19.     //  message = "我的第一个Struts2应用";   
  20.         message = "execute";  
  21.         return "success";  
  22.     }  
  23.       
  24.     public String addUI(){  
  25.         message = "addUI";  
  26.         return "success";  
  27.     }  
  28. }