相比于动态方法调用,Struts的通配符调用方法更是碉堡了。不仅可以根据传入的参数动态的调用方法,更可以根据传入的参数动态的调用相对应的类和转向的页面,只要在开发之前定义好命名规则,约定优于配置,下面我们来看一个简单的例子
首先还是类代码
package com.bird.test;
import com.opensymphony.xwork2.ActionSupport;
public class IndexAction extends ActionSupport{
private static final long serialVersionUID = 1L;
@Override
public String execute() throws Exception {
return SUCCESS;
}
public String test(){
return ERROR;
}
}
下面就是配置文件了,最重要的地方
<constant name="struts.devMode" value="true"/>
<package name="front" namespace="/front" extends="struts-default">
<action name="index*" class="com.bird.test.IndexAction" method="{1}">
<result name="success">/Hello{1}.jsp</result>
<result name="error">/test.jsp</result>
</action>
</package>
这里的action name为index*这里的*就是默认匹配任何输入的值,还有method{1}就是指输入的第一个参数,也就是和*号匹配的值,返回参数也是可以使用参数来完成这个东西,非常的强大。很好用。