一.普通的POJO类(没有继承没有实现)-基本不使用

POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称。...
public class DemoAction1 {

    public String execute(){

        System.out.println("DemoAction1是普通的POJO类...");

        return null;
}
}
        <!-- 普通的POJO类 -->
<action name="action1" class="com.struts2.web.action2.DemoAction1"/>

  基本不使用

二.实现Action接口-基本不使用

import com.opensymphony.xwork2.Action;

/**
* action类的编写2:实现action接口
* @author NEWHOM
*
*/
public class DemoAction2 implements Action { @Override
public String execute() throws Exception {
// TODO Auto-generated method stub System.out.println("DemoAction2是一个实现了Action接口的类..."); return null;
} }
        <!-- 实现了Action接口 -->
<action name="action2" class="com.struts2.web.action2.DemoAction2" />

* Action接口中定义了5个常量,5个常量的值对应的是5个逻辑视图跳转页面(跳转的页面还是需要自己来配置),还定义了一个方法,execute方法。
* 5个逻辑视图的常量
* SUCCESS -- 成功.
* INPUT -- 用于数据表单校验.如果校验失败,跳转INPUT视图.
* LOGIN -- 登录.
* ERROR -- 错误.
* NONE -- 页面不转向.

  基本不使用

三.继承ActionSupport类-经常使用

import com.opensymphony.xwork2.ActionSupport;

/**
* action编写3:继承ActionSupport类
* @author NEWHOM
*
*/
public class DemoAction3 extends ActionSupport { private static final long serialVersionUID = 1L; @Override
public String execute() throws Exception {
// TODO Auto-generated method stub System.out.println("DemoAction3是一个继承了ActionSupport的类..."); return null;
} }
        <!-- 继承了ActionSupport类 -->
<action name="action3" class="com.struts2.web.action2.DemoAction3"/>

  ActionSupport本身继承了许多的类,利于编写代码

  开发中经常使用这种方式

 
分类: Struts2

Struts2中Action类的三种写法的更多相关文章

  1. 3.Struts2中Action类的三种写法

    一.普通的POJO类(没有继承没有实现)-基本不使用 public class DemoAction1 { public String execute(){ System.out.println(&q ...

  2. Struts2中Action配置的三种方式

    <!-- 方案一:一个action对应一个方法; --> <action name="add" class="com.gxxy.struts.kp03_ ...

  3. Struts2中的数据处理的三种方式对比(Action中三种作用域request,session,application对象)

    1:在Action中如何获得作用域(request,session,application)对象: 取得Map(键值对映射集)类型的requet,session,application; 对数据操作的 ...

  4. Vue2 实例中的 data 属性三种写法与作用:

    <script src="https://unpkg.com/vue/dist/vue.js"></script> <div id="app ...

  5. Vue2实例中的data属性三种写法与作用

    <script src="https://unpkg.com/vue/dist/vue.js"></script> <div id="app ...

  6. 2018.11.19 Struts2中Action类的书写方式

    方式1: 方式2: 方式3

  7. 【深入Struts2】获取ServletAPI的三种方式

    一:获取servletAPI的三种方法 在传统的Web开发中,经常会用到Servlet API中的HttpServletRequest.HttpSession和ServletContext.Strut ...

  8. Struts2中Action接收参数的方法主要有以下三种:

    Struts2中Action接收参数的方法主要有以下三种: 1.使用Action的属性接收参数(最原始的方式):     a.定义:在Action类中定义属性,创建get和set方法:     b.接 ...

  9. Struts2中Action取得表单数据的几种方法

    Struts2中Action取得表单数据的几种方法   Struts2中Action获得表单数据的几种方法struts2 Action获取表单传值 1.通过属性驱动式JSP: <form act ...

随机推荐

  1. [BZOJ5466][NOIP2018]保卫王国 倍增

    题面 首先可以写一个暴力dp的式子,非常经典的树形dp \(dp[i][0]\)表示\(i\)这个点没有驻军,\(dp[i][1]\)就是有驻军,\(j\)是\(i\)的孩子.那么显然: \[ \be ...

  2. spark数据分析导论

    1.spark的定义 spark是一个用来实现快速而通用的集群计算平台,高效的支持更多计算模式,包括交互式查询和流处理. 主要特点就是能够在内存中进行计算,即使在磁盘上进行计算依然比mapreduce ...

  3. mssql 动态表名,游标

    ALTER PROCEDURE [dbo].[ken_overtime_check](@p_use_code nvarchar(100),@p_table_name nvarchar(1000)) A ...

  4. python模块之jinja2 ,shutil

    一 jinja2 用来给python提供html语法的模块 安装 pip install jinja2 使用 from jinja2 import Template def html_output(p ...

  5. JSP页面中<%!%>与<%%>与<%=%>详解

    首先,我们要了解jsp运行原理.JSP的本质就是一个Servlet,JSP的运行之前会先被Tomcat服务器翻译为.java文件,然后在将.java文本编译 为.class文件,而我们在访问jsp时, ...

  6. 在Eclipse中配置安卓的开发环境 (踩过的坑)

    这个学期学校有门安卓程序设计课需要安装安卓开发环境. 一开始安装的是Andriod Studio,但是过程很坎坷很心酸,遇到各种各样的问题,最后还没有解决. 没办法决定用Eclipse配置安卓环境,虽 ...

  7. CentOS7安装配置redis5.0.5

    一.安装必需包gcc yum install gcc 二.下载redis,并解压 wget http://download.redis.io/releases/redis-5.0.5.tar.gz t ...

  8. spring-boot整合shiro实现权限管理

    1.运行环境 开发工具:intellij idea JDK版本:1.8 项目管理工具:Maven 4.0.0 2.GITHUB地址 https://github.com/nbfujx/springBo ...

  9. Leetcode_897. Increasing Order Search Tree

    题目:https://leetcode.com/problems/increasing-order-search-tree/ 题意: 将一棵二叉搜索树,重排为一棵递增的二叉排序树. 解法1: rson ...

  10. 10.14.1-linux设置时间等

    设置时间[root@wen /]# date -s "20171014 15:42:00"2017年 10月 14日 星期六 15:42:00 CST 格式化时间[root@wen ...