Action的实现方式
【Pojo方式】
1.概述
Pojo(Plain Ordinary Java Object)称为简单Java类,其实就是一个JavaBean.
2.示例
/**
* Pojo类方式实现Action
*
* 优点:
* 没有继承或实现任何类或接口,类不具有侵入性。便于代码的测试和迁移。
* 缺点:
* 没有约束,容易出现错误。
* 不适用于新手使用
* @author Terry
*
*/
public class PojoAction {
public String execute(){
System.out.println("Pojo.execute() is do......"); return "success";
}
}
<package name="pojo" extends="struts-default">
<action name="pojo" class="cn.hl.action.PojoAction" >
<result>/index.jsp</result>
</action>
</package>
3.优点
简单、方便。不具有侵入性(不具备侵入性:没有继承或实现其他类或接口),便于代码的迁移。
4.缺点
没有约束,容易出现错误,不适合新手使用。
【实现接口】
1.概述
通过实现Action接口的方式实现Action类。
2.示例
/**
* 实现方式
* 创建类并实现Action接口
*
* 优点:
* 具有一定的约束性,减少了错误的发生
* 缺点:
* 通过实现的方式实现的Action,使类具有了侵入性,降低了代码的迁移性
*
* @author Terry
*
*/
public class InheritAction implements Action{ @Override
public String execute() throws Exception {
System.out.println("InheritAction.execute() is do......");
return null;
} }
3.优点
具有一定的约束性,减少了错误的发生
4.缺点
通过实现的方式实现的Action,使类具有了侵入性,降低了代码的迁移性
【继承类】
1.概述
通过继承ActionSupport类的方式实现Action。
2.示例
/**
* 继承方式实现Action
* 通过继承ActionSupport类进行实现
*
* 优点:
* 可以直接继承父类的非私有成员,达到最少代码实现Action
* 缺点:
* 具有侵入性,同时会继承父类所有非私有成员(这些成员不一定都被使用)
* 官方推荐方式
* @author Terry
*
*/
public class ExtendsAction extends ActionSupport{ }
3.优点
可以直接继承父类的非私有成员,达到最少代码实现Action
4.缺点
具有侵入性,同时会继承父类所有非私有成员(这些成员不一定都被使用)
【Action接口的成员】
- success :表示Action执行成功,需要将结果展示给用户
- none :表示Action执行成功,但不需要象用户展示任何内容。如:下载功能
- error :表示Action执行失败,需要向用户展示一个错误视图
- input :表示需要跳转到输入表单时使用
- login :表示需要用户执行登录时使用
Action的实现方式的更多相关文章
- Action的编写方式
四.Action 的编写方式 : 三种 第一种 创建普通类 不继承任何类,不实现任何接口 Public class HelloAction{ } 第二种 创建类,实现接口action Public ...
- struts2中,Action通过什么方式获得用户从页面输入的数据,又是通过什么方式把其自身的数据传给视图的?
struts2中,Action通过什么方式获得用户从页面输入的数据,又是通过什么方式把其自身的数据传给视图的? 解答: 1)可以直接通过与表单元素相同名称的数据成员(需要存在符合命名规范set和get ...
- java之struts2的action的创建方式
首先action是用来处理请求的, 这里struts2中的action的3中创建方式. 1.无侵入性的创建方式. 无侵入性:使用第三方的框架,不直接继承或实现第三方提供的类或者接口就说是无侵入性的. ...
- struts2 之 Action的创建方式
总结:struts2是一个轻量级框架,提供了无侵入性的实现方式,struts2也提供了接口和类来实现action.通过实现接口或者继承类来实现action可以实现struts2提供的相关功能, 1. ...
- Struts2笔记2--动态方法调用和Action接收请求方式
动态方法调用(在请求的时候,再明确具体的响应方法,配置的时候不明确): LoginAction类中有两个方法some和second 1. 动态方法的调用(修改常量struts.enable.Dynam ...
- struts2 页面向Action传参方式
1.基本属性注入 我们可以直接将表单数据项传递给Action,而Action只需要提供基本的属性来接收参数即可,这种传参方式称为基本属性注入.例如 jsp页面: <s:form method=& ...
- 【代码总结】Struts2 Action接受参数方式的对比
一.属性方式 1.Action中:对应表单参数的setter.getter 2.页面中 :Form中元素name取值属性名 <s:property value="属性名" ...
- 07. struts2中对Action的管理方式
web.xml配置文件的常用代码 <filter> <filter-name>struts2</filter-name> <filter-class>o ...
- Struts中Action三种接收参数的方式?
前言: 前面已经有一篇随笔介绍了Struts2的大概原理.本文就Struts2中Action与jsp页面进行数据对接时介绍几种常见方法! 值栈ValueStack 3个Action Action1 p ...
随机推荐
- C# 文件操作 全收录 追加、拷贝、删除、移动文件、创建目录、递归删除文件夹及文件....
本文收集了目前最为常用的C#经典操作文件的方法,具体内容如下:C#追加.拷贝.删除.移动文件.创建目录.递归删除文件夹及文件.指定文件夹下 面的所有内容copy到目标文件夹下面.指定文件夹下面的所有内 ...
- 学习中对input()的一些总结(raw_input()与input())
- RESTful架构搜集
今天才知道RESTful这个词,感觉好落后呀.自从5月份后很少学习新知识,这是个不好的信号. RESTful是Representational State Transfer的缩写.怎么理解Repres ...
- B. Dispersed parentheses 记忆化搜索 + 括号序列的状压表示
http://codeforces.com/gym/100633/problem/B B. Dispersed parentheses time limit per test 2 seconds me ...
- js 中对字符串的操作
1.split() split() 方法用于把一个字符串分割成字符串数组. 用法:stringObject.split(separator,howmany) separator:必选,类型为字符串或者 ...
- 左右两个Select列表框交换数据的JS
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...
- C++面试中的singleton类
引子 “请写一个Singleton.”面试官微笑着和我说. “这可真简单.”我心里想着,并在白板上写下了下面的Singleton实现: 1 class Singleton 2 { 3 public: ...
- 将Object转换成Dictionary方法
如果Object是Dictionary类型,直接返回 如果Object是NameValueCollection类型,则添加到Dictionary里 如果Object是Hashtable类型,添加到Di ...
- MapWindowsPoints函数使用
MapWindowPoints的百度解释: 函数功能:该函数把相对于一个窗口的坐标空间的一组点映射成相对于另一窗口的坐标空 的一组点. 函数原型:int MapWindowPoints(HWND ...
- 字符串、String等转换
(1) String 转换为字符串 例:String s = "abcde";char[] a = s.toCharArray(); (2) 字符串转换为Stringchar[] ...