struts1配置文件之input
<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的更多相关文章
- Struts1使用技巧
转自:https://blog.csdn.net/chjttony/article/details/6099101 1.Struts1是Apache推出的java web开发领域一个比较早,同时也是使 ...
- logstash之input、codec学习
Logstash最强大的功能在于丰富的过滤器插件.此过滤器提供的并不单单是过滤的功能,还可以对进入过滤器的原始数据进行复杂的逻辑处理.甚至添加独特的事件到后续流程中. 1.logstash基本语法组成 ...
- ELK之Logstash配置文件详解
Logstash 是一个开源的数据收集引擎,它具有备实时数据传输能力.它可以统一过滤来自不同源的数据,并按照开发者的制定的规范输出到目的地.它以插件的形式来组织功能,通过配置文件来描述需要插件做什么, ...
- 10.5 android输入系统_Reader线程_使用EventHub读取事件和核心类及配置文件_实验_分析
4. Reader线程_使用EventHub读取事件 使用inotify监测/dev/input下文件的创建和删除 使用epoll监测有无数据上报 细节: a.fd1 = inotify_init(& ...
- Struts2.0笔记二
Mvc与servlet 1.1 Servlet的优点 1. 是mvc的基础,其他的框架比如struts1,struts2,webwork都是从servlet基础上发展过来的.所以掌握servle ...
- Logstash时区、时间转换,message重组
适用场景 获取日志本身时间 日志时间转Unix时间 重组message 示例日志: hellow@,@world@,@2011-11-01 18:46:43 logstash 配置文件: input{ ...
- 第三十章 elk(1) - 第一种架构(最简架构)
软件版本: es:2.4.0 logstash:2.4.0 kibana:4.6.1 一.logstash安装(收集.过滤日志.构建索引) 1.下载:https://www.elastic.co/do ...
- ELK日志系统:Elasticsearch + Logstash + Kibana 搭建教程
环境:OS X 10.10.5 + JDK 1.8 步骤: 一.下载ELK的三大组件 Elasticsearch下载地址: https://www.elastic.co/downloads/elast ...
- Linux防火墙配置(iptables, firewalld)
netfilter和底层实现 iptables firealld Linux中的防火墙 RHEL中有几种防火墙共存: iptables firewalld ip6tables ebtables 这些软 ...
随机推荐
- javascript中的原型理解总结
经过几天研究查找资料,对原型终于有点理解了,今天就做下总结,不对之处,希望各位能够提出. 1.每一个Javascript对象(null除外)都和另一个对象相关联,“另一个”对象就是我们今天所要总结的原 ...
- Windows server 2008系统下FTP服务器的安装
一.在 Windows 服务器上安装 FTP 服务 1. 在"开始"菜单上,单击"管理工具",然后单击"服务器管理器". 2. 在" ...
- 【iOS之runtime、runloop】
什么是runtime runtime就是运行时,是系统在运行时的一些动态机制,它是一套底层的API,我们平时编写的OC代码,最终会转换为runtime实现. runtime的作用 可以利用runtim ...
- C#调用cmd 脚本实例
1.实例1 public static void TestOne() { Process p = new Process(); p.StartInfo.FileName = "cmd.exe ...
- (转)【已解决】关于SQL2008 “不允许保存更改。您所做的更改要求删除并重新创建以下表。您对无法重新创建的标进行了更改或者启用了‘阻止保存要求重新创建表的更改’” 解决方案
近日在使用sql2008的过程中,要对已经创建完成的表结构进行修改,却一直提示弹出如下提示: “ 不允许保存更改.您所做的更改要求删除并重新创建以下表.您对无法重新创建的标进行了更改或者启用了“阻止保 ...
- 如何启用第三方Chrome插件
如何安装第三方Chrome插件,先下载扩展名为CRX的文件到本地,提醒一下,不能直接在该网站下打开安装,如果安装失败,可以找到此CRX文件拖入到扩展页安装就可以了! 可是,当我们通过本地安装了第三方C ...
- 【warning】clang the linker unused
这个问题是 我在写第一个 mac os 下的helloworld遇到的 就像是 大家写第一个java中的 helloworld 肯定也是要在命令窗口下进行操作 一样 为了让一些和我一样的刚入门的孩子学 ...
- jQuery操作元素
通常,我们在创建元素时,会使用以下代码: var p = document.createElement("p"); p.innerText = "this is para ...
- java下tcp的socket连接案例
package cn.stat.p4.ipdemo; import java.io.BufferedReader; import java.io.IOException; import java.io ...
- Servlet 技术全总结 (已完成,不定期增加内容)
Servlet是独立于平台和协议的服务器端的java应用程序,处理请求的信息并将其发送到客户端. Servlet的客户端可以提出请求并动态获得响应. Servlet动态生成web页面,担当浏览器或其他 ...