1.对于直接创建类,不实现接口和继承任何的类

例如创建一个helloAction

package cn.lonecloud.control;

import com.opensymphony.xwork2.Action;
/**
*
* @author lonecloud
* @Date
* @version
* @Description
*/
public class HelloAction{ public String execute() throws Exception {
System.out.println("scd");
return SUCCESS;
}
public String test(){
System.out.println("test");
return ERROR;
} }

2.实现Action接口

package cn.lonecloud.control;

import com.opensymphony.xwork2.Action;
/**
*
* @author lonecloud
* @Date
* @version
* @Description
*/
public class HelloAction implements Action{ @Override
public String execute() throws Exception {
System.out.println("scd");
return SUCCESS;
}
public String test(){
System.out.println("test");
return ERROR;
} }

3.继承ActionSupport类(推荐使用,里面使用的好多的方法)

package cn.lonecloud.control;

import cn.lonecloud.domain.User;

import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven; /**
* 用于对登录拦截器
*
* @author lonecloud
*
*/
/**
* @author lonecloud
*
*/
public class LoginAction extends ActionSupport implements ModelDriven<User> {
/**
*ModelDriven创建一个User实例
*/
private User user=new User();
//实现序列化接口
private static final long serialVersionUID = 1L; /**
* 登录验证
* @return
*/
public String LoginUI() {
System.out.println(user.getPassword());
if (user.getUserName()==null||"".equals(user.getUserName())) {
this.addFieldError("userName12","用户名出错");
return "LoginUI";
}
return "LoginUI";
} /* (non-Javadoc)
* @see com.opensymphony.xwork2.ModelDriven#getModel()
* 该方法对于返回model
*/
@Override
public User getModel() {
// TODO Auto-generated method stub
return user;
}
}

struts 中的创建Action的三种方法的更多相关文章

  1. JavaWeb_(Struts2框架)Struts创建Action的三种方式

    此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核 ...

  2. java创建线程的三种方法

    这里不会贴代码,只是将创建线程的三种方法做个笼统的介绍,再根据源码添加上自己的分析. 通过三种方法可以创建java线程: 1.继承Thread类. 2.实现Runnable接口. 3.实现Callab ...

  3. 【转载】取得系统中网卡MAC地址的三种方法

    From:http://blog.csdn.net/zhangting1987/article/details/2732135 网卡地址这个概念有点混淆不清.因为实际上有两个地址,mac地址和物理地址 ...

  4. struts2开发action 的三种方法以及通配符、路径匹配原则、常量

    struts2开发action 的三种方法 1.继承ActionSupport public class UserAction extends ActionSupport { // Action中业务 ...

  5. 《Java多线程面试题》系列-创建线程的三种方法及其区别

    1. 创建线程的三种方法及其区别 1.1 继承Thread类 首先,定义Thread类的子类并重写run()方法: package com.zwwhnly.springbootaction.javab ...

  6. Java中获取键盘输入值的三种方法

    Java中获取键盘输入值的三种方法     Java程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值 ...

  7. cocos2dx中创建动画的三种方法

    1.最最原始的方法,先创建动画帧,再创建动画打包(animation),再创建动画(animate) 第一步: 创建动画帧:CCSpriteFrame,依赖于原始的资源图片(xx.png,xx.jpg ...

  8. Java并发编程(二)创建线程的三种方法

    进程与线程 1.  进程 进程和代码之间的关系就像音乐和乐谱之间的关系一样,演奏结束的时候音乐就不存在了但乐谱还在:程序执行结束的时候进程就消失了但代码还在,而计算机就是代码的演奏家. 2. 线程 线 ...

  9. python 多线程编程之threading模块(Thread类)创建线程的三种方法

    摘录 python核心编程 上节介绍的thread模块,是不支持守护线程的.当主线程退出的时候,所有的子线程都将终止,不管他们是否仍在工作. 本节开始,我们开始介绍python的另外多线程模块thre ...

随机推荐

  1. linux 中nvme 的中断申请及处理

    /** * struct irq_desc - interrupt descriptor * @irq_data: per irq and chip data passed down to chip ...

  2. .net Core学习笔记1 创建简单的 .net core项目

    1.打开vs2017>Web 1:创建实体类: namespace ProductMvc.Models { //商品类型 public class ProductType { public in ...

  3. sitemesh网页布局

    看项目时发现对应页面下找不到侧栏部分代码,仔细观察后发现页面引入了sitemesh标签,查了下资料原来是页面用了sitemesh框架解!耦!了! 以前多个模块包含相同模块时总是include jsp文 ...

  4. C#、Java之比较

    很多人说C#是微软用来和Java抗衡的武器,因为二者在很大程度上有着惊人的相似,尽管如此,两者不同的地方也很多,所谓"于细微处见差异".那么两者的相似和区别都在什么地方呢?我们从今 ...

  5. windows 查看端口被哪个程序占用

    比如查看端口8080 1. 查看占用端口8080对应的PID,输入命令:netstat -aon|findstr "8080" (加入查到pid为111222) 2. 继续输入ta ...

  6. git 安装使用

    系统ubuntu14.04 1.安装:sudo  apt-get install git 2.设置name and Email: git config --global user.name " ...

  7. 二级缓存:EHCache的使用

    EHCache的使用 在开发高并发量,高性能的网站应用系统时,缓存Cache起到了非常重要的作用.本文主要介绍EHCache的使用,以及使用EHCache的实践经验. 笔者使用过多种基于Java的开源 ...

  8. debug时ClassNotFound可能出现的原因

    自我总结,欢迎拍砖! 目的:总结ClassNotFound可能出现的原因,方便以后定位该类问题. 原因:当项目中加了新类,debug或run时,报classnotfound,说明没有找到该类的clas ...

  9. Python 定位桌面

    通过注册表寻找桌面路径: (用内置的winreg) import winreg key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, \             ...

  10. VUE-脚手架搭建

    1.什么vue-cli    vue-cli是vue.js的脚手架,用于自动生成vue.js工程模板的. 步骤: 2.安装   ->全局安装   npm install vue-cli -g 或 ...