实现Action的几种方法
1. implements Action
2. extends ActionSupport
3. 也可以不继承任何父类不实现任何借口

#当一个类有多个方法

package com.struts.test;
import com.opensymphony.xwork2.ActionSupport;
public class Test extends ActionSupport {
private static final long serialVersionUID = 1L; @Override
public String execute() throws Exception {
System.out.println("execute");
return SUCCESS;
} public String add() throws Exception {
System.out.print("add");
return "add";
} public String update() throws Exception {
System.out.print("update");
return "update";
} public String delete() throws Exception {
System.out.print("delete");
return "delete";
}
}

如上方法,里面有add()、update()、delete();
这么多方法该如何配置?
1. 配置多个action

<package name="struts_two" extends="struts-default">

    <!-- 执行Test类中的update方法 -->
<action name="test_one_struts" class="com.struts.test.Test" method="update">
<!-- 返回跳转到Test_update.jsp页面 -->
<result name="update">/Test_update.jsp</result>
</action> <!-- 执行Test类中的delete方法 -->
<action name="test_one_struts" class="com.struts.test.Test" method="delete">
<!-- 返回跳转到Test_delete.jsp页面 -->
<result name="delete">/Test_delete.jsp</result>
</action> <!-- 执行Test类中的add方法 -->
<action name="test_one_struts" class="com.struts.test.Test" method="add">
<!-- 返回跳转到Test_add.jsp页面 -->
<result name="add">/Test_add.jsp</result>
</action>
</package>

2.动态配置(不推荐)

<!--#2.5版本需要打开动态配置
<constant value="true" name="struts.enable.DynamicMethodInvocation"/>
-->
<package>
<action name="test_one_struts" class="com.struts.test.Test">
<result name="update">/Test_update.jsp</result>
<result name="delete">/Test_delete.jsp</result>
<result name="add">/Test_add.jsp</result>
</action>
</package>

3.通配符配置(推荐)

<package>
<!--
* 通配符
根据你输入的路径来判断你是执行什么方法
比如:你输入 Test_delete,那么就会执行Test_类的delete方法,并且跳转到对应的页面
-->
<action name="Test_*" class="com.struts.test.Test" method="{1}">
<result name="{1}">/Test_{1}.jsp</result>
<!-- 2.5版本及以上必须配置<allowed-methods>标签,允许的方法 -->
<allowed-methods>add,delete,update,select</allowed-methods>
</action>
</package>

JavaEE笔记(六)的更多相关文章

  1. 《MFC游戏开发》笔记六 图像双缓冲技术:实现一个流畅的动画

    本系列文章由七十一雾央编写,转载请注明出处.  http://blog.csdn.net/u011371356/article/details/9334121 作者:七十一雾央 新浪微博:http:/ ...

  2. java之jvm学习笔记六-十二(实践写自己的安全管理器)(jar包的代码认证和签名) (实践对jar包的代码签名) (策略文件)(策略和保护域) (访问控制器) (访问控制器的栈校验机制) (jvm基本结构)

    java之jvm学习笔记六(实践写自己的安全管理器) 安全管理器SecurityManager里设计的内容实在是非常的庞大,它的核心方法就是checkPerssiom这个方法里又调用 AccessCo ...

  3. Learning ROS for Robotics Programming Second Edition学习笔记(六) indigo xtion pro live

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...

  4. Python学习笔记六

    Python课堂笔记六 常用模块已经可以在单位实际项目中使用,可以实现运维自动化.无需手工备份文件,数据库,拷贝,压缩. 常用模块 time模块 time.time time.localtime ti ...

  5. Typescript 学习笔记六:接口

    中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...

  6. Django开发笔记六

    Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.登录功能完善 登录成功应该是重定向到首页,而不是转发 ...

  7. python3.4学习笔记(六) 常用快捷键使用技巧,持续更新

    python3.4学习笔记(六) 常用快捷键使用技巧,持续更新 安装IDLE后鼠标右键点击*.py 文件,可以看到Edit with IDLE 选择这个可以直接打开编辑器.IDLE默认不能显示行号,使 ...

  8. Go语言学习笔记六: 循环语句

    Go语言学习笔记六: 循环语句 今天学了一个格式化代码的命令:gofmt -w chapter6.go for循环 for循环有3种形式: for init; condition; increment ...

  9. 【opencv学习笔记六】图像的ROI区域选择与复制

    图像的数据量还是比较大的,对整张图片进行处理会影响我们的处理效率,因此常常只对图像中我们需要的部分进行处理,也就是感兴趣区域ROI.今天我们来看一下如何设置图像的感兴趣区域ROI.以及对ROI区域图像 ...

  10. Linux学习笔记(六) 进程管理

    1.进程基础 当输入一个命令时,shell 会同时启动一个进程,这种任务与进程分离的方式是 Linux 系统上重要的概念 每个执行的任务都称为进程,在每个进程启动时,系统都会给它指定一个唯一的 ID, ...

随机推荐

  1. python之mechanize模拟浏览器

    安装 Windows: pip install mechanize Linux:pip install python-mechanize 个人感觉mechanize也只适用于静态网页的抓取,如果是异步 ...

  2. Java简单的数据库连接

    package test.postgre; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Res ...

  3. MySQL上机实习报告(一)

    一.实习内容    利用wamp进行MySQL上机实习,建立数据库和一个学生信息表,并能对建的表进行数据插入.修改.查询和删除等内容. 二.实习目的 能将课堂上所学的内容运用到实际的上机操作中,进一步 ...

  4. 转载:从程序员的角度看ASCII, GB2312, UNICODE, UTF-8

    以下内容转自博客:http://blog.chinaunix.net/uid-22670933-id-1771613.html. 一.字符编码是怎么回事 0. 概念 字节是计算机的最基本存储单位,一个 ...

  5. 我的Java之旅——之后的学习计划

      在写完第一个Java程序之后,对于一些最最基本的东西有了大致的了解,对于之后的学习,我做了简单的计划. 7月17号:补充一些基本内容. 7月18.19号: 1. Java的一些常用类,包括 :Nu ...

  6. laravel 资料

    1.http://maxoffsky.com/maxoffsky-blog/building-a-shop-with-laravel-tutorial-series-announcement/  一篇 ...

  7. IDEA 使用技巧 Update

    IDEA使用起来和Eclipse很大区别. 1.快捷键. 因为一个个熟悉起来费时间,就直接在Preferences—keymap里选择了Eclipse OS X,这样快捷键就转换到了Mac下Eclip ...

  8. 使用 CSS 根据兄弟元素的个数来调整样式

    在某些场景下,我们需要根据兄弟元素的总数来为它们设置样式.最常见的场景就是,当一个列表不断延长时,通过隐藏控件或压缩控件等方式来节省屏幕空间,以此提升用户体验. 为保证一屏内容能展示更多的内容,需要将 ...

  9. CSS控制列表与导航的制作

    <style type="text/css"> /*body默认是有边距的*/ body{ margin:0;} /*ul默认是有边距的所以先将边距去掉IE78只要加上 ...

  10. 4-1 R语言函数 lapply

    #lapply函数 #可以循环处理列表中的每一个元素 #lapply(参数):lapply(列表,函数/函数名,其他参数) #总是返回一个列表 #sapply:简化结果 #结果列表元素长度均为1,返回 ...