Struts中action的调用方式

Struts中action的调用方式

Action执行的时候并不一定要执行execute方法

可以在配置文件中配置Action的时候用method=来指定执行哪个方法

也可以在url地址中动态指定(动态方法调用DMI)(推荐)

 

1,通过action标签中的method属性(不推荐使用--会产生太多的action)

<action name="user" class="com.test.User" method="userAdd">

。。。。

</action>

在url地址栏输入“。。。/user”时,程序会到User类中找userAdd()方法执行

 

2,通过!动态调用(推荐使用

 

<action name="user" class="com.test.User">

。。。。

</action>

在url地址栏输入“。。。/user!add”时,程序会到User类中找add()方法执行

 

3,使用通配符*匹配(可以降低配置--主要是result

<action name="User*" calss="com.test.User" method="{1}">

<result>/user{1}_success.jsp</result>

</action>

在url地址栏输入“。。。/Useradd”时,程序会到User类中找add()方法执行

成功时返回页面useradd_success.jsp

 

在url地址栏输入“。。。/Userdel”时,程序会到User类中找add()方法执行

成功时返回页面userdel_success.jsp

 

 

<action name="*_*" calss="com.test.{1}Action" method="{2}" >

<result>/{1}_{2}_success.jsp</result>

</action>

 

在url地址栏输入“。。。/User_add”时,程序会到UserAction类中找add()方法执行

成功时返回页面User_add_success.jsp


补充:

配置匹配时首先匹配最精确的-->userAdd优于user*

若精确度相同-->带*的都匹配-->则优先匹配靠前的配置

你可能感兴趣的:(struts)