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 ...
随机推荐
- React Native开发时devices offline和手机不能晃动的处理
1. adb device 显示 devices offline 可能重启adb server: $ adb kill-server $ adb start-server 2. 华为等手机不能 晃动显 ...
- python简单脚本-sql字符提取
a="""dr.GetStr("kh"), dr.GetStr("xm"), dr.GetStr("xh"), ...
- shell中使用ssh
ssh服务是不能用非交互的方式传递密码,想不输入密码,直接ssh连接到服务器有两种方法,sshpass和expect sshpass # wget http://downloads.sourcefor ...
- mongodb复制集里查看主从操作日志oplog
MongoDB的replica set架构是通过一个日志来存储写操作的,这个日志就叫做 oplog .oplog.rs 是一个固定长度的 Capped Collection,它存在于local数据库中 ...
- 新建maven的pom.xml第一行出错的解决思路
前言:博主在想要用maven创建项目的时候,忘记之前已经安装过maven了,所以再安装了另一个版本的maven,导致在pom.xml的第一行总是显示某一个jar的zip文件读取不出来. 在网上找了很多 ...
- x-shell配置远程连接
1. 打开x-shell 2. 配置编译属性 3. 配置用户的身份证信息 5. 配置完成之后选择连接
- jni log 使用
1. 在源文件中添加头文件 #include <android/log.h> #define LOG_TAG "System.out.c" #define LOGD(. ...
- 【转】Java重构-策略模式、状态模式、卫语句
前言 当代码中出现多重if-else语句或者switch语句时.弊端之一:如果这样的代码出现在多处,那么一旦出现需求变更,就需要把所有地方的if-else或者switch代码进行更改,要是遗漏了某一处 ...
- 五. web开发基础
一.HTML 二.CSS 三.JavaScript 四.web框架 1.web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端 ...
- tableview和searchbar的适配
iOS7中,如果用UITableViewStyleGrouped的话,里面的 cell会比原来的拉长了,这样做应该是为了统一和UITableViewStylePlain风格时cell的大小一致,所以改 ...