Struts2的多方法动态Action

原创


一个简单的Action里面的核心方法只有一个execute();

定义多个核心方法的Action,有如下3种方式:

  • 为Action配置method属性
  • 动态方法调用
  • 使用通配符映射方式

动态方法调用是指采用如下格式调用Action中对应的方法:

<form action="Action名字!方法名字">

也就是在JSP页面的表单中这样写:(假如Action类名为:ope,里面有核心方法sub()、add()、mul()、div())

<form action="ope!add" method="post" name="aaa"></form>

在struts.xml中只需要配置该Action,而不必配置每个方法,配置格式:

<action name="Action名字" class="包名.Action类名">
  <result name="***">jsp</result>
</action>

在JSP中用Javascript动态改变表单action中的属性

<script type="text/javascript">
  function sub(){document.aaa.action="ope!sub"}
  function mul(){document.aaa.action="ope!mul"}
  function div(){document.aaa.action="ope!div"}
</script>

如果sturts的版本是2.5的话,struts.xml的配置需要加多标签<allowed-methods>,表示允许使用action里面的哪些方法。

20:03:52

2018-11-14

原文地址:https://www.cnblogs.com/chiweiming/p/9960051.html