Action中的方法代表业务逻辑,那么一个模块中的多个业务逻辑如何用Action来处理呢?我们有2种办法来处理这个问题:

  1. 一个Action对应一个业务逻辑,实现方便,但是Action数量多,struts.xml中需要配置的内容也多,这种方法不推荐;
  2. 一个Action对应多个业务逻辑,例如表的CRUD操作,含有多个业务逻辑,我们只写一个Action来实现,Action的数量没有增加,struts.xml的配置也简单,所以这种方法是我们推荐的做法。

Action中自定义方法的声明和execute方法一样,方法的调用路径为“Action名称!方法名称.action”。

以用户表Userinfo的CRUD操作为例,看一下多方法Action的代码:

package com.wdl.duofangfaAction;import com.opensymphony.xwork2.ActionSupport;@SuppressWarnings("serial")
public class curdAction extends ActionSupport {public String add() throws Exception{System.out.println("curdAction..add");return "success";}public String updata() throws Exception{System.out.println("curdAction..updata");return "success";}public String delete() throws Exception{System.out.println("curdAction..delete");return "success";}
}

struts.xml配置如下

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd">
<struts><package name="curd" namespace="/curd" extends="struts-default"><action name="curdaction" class="com.wdl.duofangfaAction.curdAction"><result name="success">/MyJsp.jsp</result></action>       </package>
</struts>

前台页面链接格式 ./namespace/actionname!action类方法名().action

<a href="./curd/curdaction!add.action">add</a><p/><a href="./curd/curdaction!updata.action">updata</a><p/><a href="./curd/curdaction!delete.action">delete</a><p/>

转载于:https://www.cnblogs.com/daqian/p/4203561.html

Struts2 多方法的Action相关推荐

  1. Struts2中配置默认Action

    Struts2中配置默认Action 一.jsp默认设置 1.当访问的Action不存在时,页面会显示错误信息,可以通过配置默认Action处理用户异常的操作: 2.配置方法: 在struts.xml ...

  2. Struts2框架学习(二) Action

    Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器 ...

  3. Struts2框架中的Action接口和ActionSupport类

    Struts2框架中的Action接口和ActionSupport类 1.Action接口 2.ActionSupport类 3.登录案例 3.1.页面 3.2.控制器 3.3.struts.xml配 ...

  4. Struts2的ResultType和Action处理链

    Struts2的ResultType和Action处理链 Struts2的结果类型 在struts-default.xml中定义了Struts2内置的所有可用的<result-type/> ...

  5. Struts2动态方法调用

    2019独角兽企业重金招聘Python工程师标准>>> 动态方法调用 在Struts2中动态方法调用有三种方式,动态方法调用就是为了解决一个Action对应多个请求的处理,以免Act ...

  6. struts2 jsp跳转action 404_Struts2 学习笔记(三)

    1. Struts2的拦截器 1.1 拦截器概述 1.1.1 什么是拦截器 Interceptor:拦截器,起到拦截Action的作用: Filter:过滤器,过滤从客户端向服务器发送的请求: Int ...

  7. Struts2学习(四):Action执行的时候发生了什么

    "分流"是指根据我们所请求的url把request交给某个指定的action来处理.那么在这个FilterDispatcher中还有一些什么操作呢?在Struts1中我们经常要把一 ...

  8. Struts2学习日记(二)简单的Struts2登陆实现(Action继承ActionSupport类)

    功能实现:实现登陆功能,输入用户名和密码,如果用户名不为hello或者密码不为world,便返回登陆页并提示错误,否则显示登陆结果. 1.打开MyEclipse,创建一个webProject项目. 2 ...

  9. Struts2通配符映射/Struts action name=/*/* method={2} class=com.jxc.action.{1}Action result

    struts2的关于method="{1}"意思详解 <action   name= "Login_* "   method= "{1} &qu ...

最新文章

  1. 怎样训练左右手协调_2019中考体育训练计划
  2. 如何关闭jdk自动更新提示
  3. JS设置cookie、读取cookie、删除cookie
  4. 一些有关计组实验中Quartus中的名词或术语的解释
  5. 《几何与代数导引》习题1.38
  6. jdbc java数据库连接 3)Statement接口之执行DDL和DML语句的简化
  7. 服务器旧图片维护,图片服务器
  8. 按键精灵post教程_安卓按键精灵教程VIP按键精灵辅助post视频教程大漠插件编程实战...
  9. mt管理器小白破解之路-基础篇第一课
  10. DDIM代码详细解读(1):数据集加载、类别条件信息读取、关键超参数解析
  11. 头条python后台一面凉经
  12. (二)U盘安装Windows Server 2008 R2系统
  13. 解决VMware虚拟机字体模糊的办法
  14. win10主题更换_利用termuxapi手机定时更换网络随机壁纸;免费申请小米收款宝
  15. 每一次人生的最低点便是最好的修炼阶段,只有坚持过好最低点,才能挑战更高点---致自己
  16. 互联网面试——WPF面试问题
  17. html制作美容热点产品,美容热点产品.html
  18. 浅议数字化双胞胎与仿真
  19. 将文本数据转换成arff文件
  20. 免费可商用图片素材、高清无版权图片、免费可个人和商业用途图片

热门文章

  1. java 数组排序_用Java对数组排序
  2. java php cms_内容管理系统的开发策略研究——以PHP CMS、Node.js CMS、Java CMS为例
  3. java int 指针_如何在Java中使用指针?
  4. 求和符号上下的值怎么打_Excel快速求和的N种方法,一网打尽
  5. lua 给userdata设置元表_提高Lua语言开发效率的简单方法
  6. vue 实现文本的拖拽_Vue-实现简单拖拽(自定义属性)
  7. 需要显卡还是cpu_装机应该在哪个硬件上省钱, CPU还是显卡, 看完本文就知道了...
  8. Soft NMS算法笔记
  9. Python风格总结:元组tuple
  10. QWT6.0.1+win7下安装说明