<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. Redis起步

    Rdis和JQuery一样是纯粹为应用而产生的,这里记录的是在CentOS 5.7上学习入门文章: 1.Redis简介  Redis是一个key-value存储系统.和Memcached类似,但是解决 ...

  2. Python之基础(一)

    数学计算 要利用相关的数学计算函数,首先需要把数学模块包含进来: >>>import math 进行计算: >>> math.pi 3.14159265358979 ...

  3. Java基础知识强化44:StringBuffer类之把数组拼接成指定格式的字符串的案例

    1. 先看案例代码如下: package cn.itcast_07; /* * 把数组拼接成一个字符串 */ public class StringBufferTest2 { public stati ...

  4. inode-软链接与硬链接

    一.inode是什么?理解inode,要从文件储存说起.文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存512字节(相当于0.5KB).操作系统读取硬 ...

  5. 使用jQuery操作元素的属性与样式

    本文学习如何使用jQuery获取和操作元素的属性和CSS样式. 元素属性和Dom属性 对于下面这样一个标签元素: <img id='img' src="1.jpg" alt= ...

  6. DOM4J 解析 XML

    1.在项目根目录下新建lib文件夹 2.把dom4j文件拷贝到lib文件夹 3.dom4j,右键Build Path---->Add To Build Path 这样就添加dom4j到项目成功 ...

  7. (原)torch的训练过程

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/6221622.html 参考网址: http://ju.outofmemory.cn/entry/284 ...

  8. (原)python中matplot中获得鼠标点击的位置及显示灰度图像

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/6182474.html 参考网址: http://matplotlib.org/examples/pyl ...

  9. Linux下MySQL的彻底卸载和安装配置字符集

    前言: Linux环境下MySQL的安装和配置在网上已经有很多教程了.之所以写这篇文章是因为在配置字符集的时候找了网上的一些教程发现并不能用导致折腾了一阵子.下面的教程均是亲自实践. MySQL的彻底 ...

  10. IIS中启用gzip压缩(网站优化)

    HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术.大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度.这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中的 ...