一个Action多个方法的调用

来源:互联网 发布:mac 查看下载速度 编辑:程序博客网 时间:2024/06/16 03:09

在大家写Action的时候,配置struts2.xml文件的时候我们大家都知道需要method={1}这个属性但是我们有的时候并不清楚到底他是什么意思。下面我总结了下Action中的方法调用的方法,希望能帮到大家理解!



具体的调用方式:(一共三种方式)
* 方法的动态调用
* 在<action>中配置method属性
* 使用通配符


①方法的动态调用方式:
action名称+!+方法名称+后缀

<a href="user!add.action">添加用户</a><br>
<a href="user!del.action">删除用户</a><br>
<a href="user!update.action">修改用户</a><br>
<a href="user!list.action">查询用户</a><br>

!!动态调用参数配置,默认为true,可以调用,否则不能调用
<constant name="struts.enable.DynamicMethodInvocation" value="false"/>

!!Action中的所有方法必须和execute方法一致(参数,返回值,异常最好也一样)


②在<action>标签中配置method属性

<package name="user-package" extends="struts-default"><!-- <action name="add" class="com.bjpowernode.struts2.UserAction" method="add"><result>/success.jsp</result></action><action name="del" class="com.bjpowernode.struts2.UserAction" method="del"><result>/success.jsp</result></action><action name="update" class="com.bjpowernode.struts2.UserAction" method="update"><result>/success.jsp</result></action><action name="list" class="com.bjpowernode.struts2.UserAction" method="list"><result>/success.jsp</result></action> --> <action name="addUser" class="com.bjpowernode.struts2.UserAction" method="add"><result>/success.jsp</result></action><action name="delUser" class="com.bjpowernode.struts2.UserAction" method="del"><result>/success.jsp</result></action><action name="updateUser" class="com.bjpowernode.struts2.UserAction" method="update"><result>/success.jsp</result></action><action name="listUser" class="com.bjpowernode.struts2.UserAction" method="list"><result>/success.jsp</result></action></package>

③使用通配符

具体配置


<action name="*User" class="com.bjpowernode.struts2.UserAction" method="{1}">
<result>/{1}Success.jsp</result>
</action>


在Struts2的<action>标签class、name、method和result标签上都可以使用通配符
通配符的作用就是为了减少配置量,通配符需要建立在约定的基础上




0 0
原创粉丝点击