<action path="/*Person" type="cn.itcast.PersonAction" scope="request" input="/{1}.jsp" parameter="method">


<forward name="list" path="/WEB-INF/pages/list.jsp"/>

</action>

使用通配符,仅仅只是命名的时候*的位置跟{1}保持一致.

我写的这个action继承dispatchAction,parameter=method

假如里面有add方法和edit方法()

訪问add方法的时候,使用这个地址:/addPerson.do?method=add-->这个时候input就是/add.jsp

訪问edit方法的时候,使用这个:/editPerson.do?method=edit-->此时input就是/edit.jsp



input="/register.jsp"
指定formbean的数据是由哪个页面提供的。说明:提供此属性的目的在于formbean校验失败时,程序方便跳回formbean的输入页面,通过struts1错误信息标签,显示校验失败信息。



struts配置中的路径与模式匹配

struts配置中的action,有一个path属性,它表明请求的URI

普通情况下,我们须要在配置文件里明白指定某个特定的URI,如path=“/user/add”

在一些大型应用中,假设可以制定一套严格的路径及其操作规范的话,我们可以利用path的路径模式匹配功能,来简化struts配置文件繁琐的编写工作量

如果有例如以下规范:

路径匹配规范演示样例

对user对象的全部处理Action,均须要以例如以下的路径进行訪问:

/user/add.do – 处理用户加入的有关操作

/user/delete.do – 处理用户删除的有关操作

/user/update.do – 处理用户更新的有关操作



全部操作(Action)相应的JSP例如以下:

全部操作成功(失败)之后的转向页面,有例如以下命名规范:

/user/add.do -> /user/add_success.jsp或/user/add_error.jsp

/user/delete.do -> /user/delete_success.jsp或/user/delete_error.jsp



全部操作的输入界面有例如以下命名规范:

加入操作 -> /user/add_input.jsp

更新操作 -> /user/update_input.jsp



Action配置演示样例

<action

path="/user/*"

type="com.bjsxt.struts.web.actions.UserAction"

name="userForm"

parameter="method"

>

<forward name="index" path="/user/index.jsp"/>

<forward name="success" path="/user/{1}_success.jsp"/>

<forward name="error" path="/user/{1}_error.jsp"/>

<forward name="input" path="/user/{1}_input.jsp"/>

</action>

Action配置解释

全部的/user/*.do请求,都将由UserAction这个类来处理,UserAction类继承DispatchAction,它将依据传入的method參数的值,来分发到不同的方法来进行处理

在UserAction类中的不论什么一个方法,都能够返回index/success/error/input等名称的ActionForward

依据请求路径的不同,即使调用同样的返回代码,但其转向也将不同,如:

/user/add.do?method=add请求,将被转发给UserAction类的add方法处理,如果它用mapping.findForward(“success”);来返回成功页面,这将转向的实际JSP页面是:/user/add_success.jsp

而/user/delete.do?method=delete请求,将被转发给UserAction类的delete方法处理,如果它用mapping.findForward(“success”);来返回到删除成功页面,这将转向的实际JSP页面是:/user/delete_success.jsp,所以,不同URI请求的同样名称的返回页面将是不同的。

而/user/index.do请求(或者不论什么一个其他请求,如/user/abcd.do或/user/test.do),都由于没有传递method參数,而触发调用UserAction的unspecified方法

struts1配置文件之input的更多相关文章

  1. Struts1使用技巧

    转自:https://blog.csdn.net/chjttony/article/details/6099101 1.Struts1是Apache推出的java web开发领域一个比较早,同时也是使 ...

  2. logstash之input、codec学习

    Logstash最强大的功能在于丰富的过滤器插件.此过滤器提供的并不单单是过滤的功能,还可以对进入过滤器的原始数据进行复杂的逻辑处理.甚至添加独特的事件到后续流程中. 1.logstash基本语法组成 ...

  3. ELK之Logstash配置文件详解

    Logstash 是一个开源的数据收集引擎,它具有备实时数据传输能力.它可以统一过滤来自不同源的数据,并按照开发者的制定的规范输出到目的地.它以插件的形式来组织功能,通过配置文件来描述需要插件做什么, ...

  4. 10.5 android输入系统_Reader线程_使用EventHub读取事件和核心类及配置文件_实验_分析

    4. Reader线程_使用EventHub读取事件 使用inotify监测/dev/input下文件的创建和删除 使用epoll监测有无数据上报 细节: a.fd1 = inotify_init(& ...

  5. Struts2.0笔记二

    Mvc与servlet 1.1   Servlet的优点 1.  是mvc的基础,其他的框架比如struts1,struts2,webwork都是从servlet基础上发展过来的.所以掌握servle ...

  6. Logstash时区、时间转换,message重组

    适用场景 获取日志本身时间 日志时间转Unix时间 重组message 示例日志: hellow@,@world@,@2011-11-01 18:46:43 logstash 配置文件: input{ ...

  7. 第三十章 elk(1) - 第一种架构(最简架构)

    软件版本: es:2.4.0 logstash:2.4.0 kibana:4.6.1 一.logstash安装(收集.过滤日志.构建索引) 1.下载:https://www.elastic.co/do ...

  8. ELK日志系统:Elasticsearch + Logstash + Kibana 搭建教程

    环境:OS X 10.10.5 + JDK 1.8 步骤: 一.下载ELK的三大组件 Elasticsearch下载地址: https://www.elastic.co/downloads/elast ...

  9. Linux防火墙配置(iptables, firewalld)

    netfilter和底层实现 iptables firealld Linux中的防火墙 RHEL中有几种防火墙共存: iptables firewalld ip6tables ebtables 这些软 ...

随机推荐

  1. JAVA学习篇--javaweb之Filter具体解释

    在DRP项目中,多次提到了Filter,它攻克了字符集的统一设置以及统一控制简单WebCache,从中我们能够体会到.它给我们带来的优点不不过降低代码量这么简单,它的出现避免了我们每一个页面反复的编写 ...

  2. 福昕阅读器drm加密解密总结

    drm是数字版权保护的一种方式,前一段时间在做四川文轩数字图书馆项目的时候用到了相关的知识,感觉这东西对于一些在线阅读和视频播放还是有很大用处的. 对于其工作原理我也很好奇,先摘抄度娘的内容如下,当然 ...

  3. Java基础知识强化61:经典查找之 常见查找算法小结

    一.顺序查找 条件:无序或有序队列. 原理:按顺序比较每个元素,直到找到关键字为止. 时间复杂度:O(n) 二.二分查找(折半查找) 条件:有序数组 原理:查找过程从数组的中间元素开始,如果中间元素正 ...

  4. SuperSocket快速入门(二):启动程序以及相关的配置

    如何快速启动第一个程序 既然是快速入门,所以,对于太深奥的知识点将不做讲解,会在后续的高级应用章节中,会对SS进行拆解.所有的实例90%都是来自SS的实例,外加本人的注释进行讲解. 一般应用而言,你只 ...

  5. Oracle VM VirtualBox 随系统自动启动虚拟机的方法

    Oracle VM VirtualBox 随系统自动开启虚拟机的方法 @ECHO OFFcd..cd E:cd..cd E:\VirtualBox\start VirtualBox.exe -star ...

  6. ruby.new

    ruby.new 输出:print.puts.p 注释 #say hello =begin this is a long comment =end 变量 local: time or _time in ...

  7. Ring对象

    Ring是一个封闭的Path即起始和终止点有相同的坐标值,它有内部和外部属性.

  8. SQL2008转SQL2005数据库经验

    1.用SQL2008创建兼容2005的结构脚本. 2.在2005中生成数据库结构. 3.利用2005中的数据导入直接从源数据库中导入数据,此处注意自增长标识的选项需要添加,多表优化选项可以去掉,这里不 ...

  9. 32位PLSQL_Developer连接oracle11g_64位

    1. 请将你下载的instantclient-basic-win32-10.2.0.5 文件解压.然后复制到你的数据库安装的文件夹下的producti文件夹下,我的是: E:\app\Administ ...

  10. 导出数据库中所有数据到Excle中

    Workbook wb = new HSSFWorkbook();//创建工作簿 Connection conn = DataSourceUtils.getDataSource().getConnec ...