Struts功能详解——ActionMapping对象
Struts功能详解——ActionMapping对象
ActionMaping也是Struts的一个核心对象,通常我们不用手写ActionMapping类,它只需要在配置文件中配置就行。
ActionMapping如何配置:
ActionMapping在配置文件Strtus-config.xml中配置,配置格式如下:
- <struts-config>
- <action-mappings>
- <actionpathactionpath="/login"
- type="com.bjpowernode.struts.LoginAction"
- name="loginForm"
- scope="request"
- >
- <forwardnameforwardname="success" path="/login_success.jsp" />
- <forwardnameforwardname="error"path="/login_error.jsp"/>
- </action>
- </action-mappings>
- </struts-config>
其中<action>标签是为每一个独立的action配置,配置他们的访问方式和访问控制。
<forward>标签配置action执行完返回以后,需要到达的地方。
其中name scope type分别是actionMapping的一个属性,它对应着action的需要访问的位置和数据来源,还有数据范围。
ActionMapping的功能:
ActionMapping的主要功能就是管理Action的信息和管理Action执行完成以后的ActionForward的信息。
它将特定请求映射到特定Action的相关信息存储ActionMapping中,ActionServelt将ActionMapping传送到Action类execute()方法,Action将使用ActionMapping的findForward()方法,此方法返回一个指定名称的ActionForward,这样Action就完成了本地转发。若没有找到具体的ActionForward,就返回一个null.
ActionMapping的方法:
publicExceptionConfig findException(Class type) ,查找异常对象
public ActionForwardfindForward(String name) 可在映射中动态添加ActionForward:
public String[]findForwards()找到一个Action可以使用的actionForward列表
public ActionForwardgetInputForward() 得到本action的输入ActionForard.
ActionMapping继承于org.apache.struts.config.ActionConfig
总之,对于ActionMapping来说,起算是一个web控制层的数据字典,这个数据字典里面存放在Action和ActionForward的信息,在程序执行的过程中,查阅这个数据字典,然后达到相应的位置,执行完成以后,再查询这个数据字典,转发特定的信息。
Struts功能详解——ActionMapping对象的更多相关文章
- Struts功能详解 ——ActionServlet
ActionServlet类是Struts框架的内置核心控制器组件,它继承了javax.servlet.http.HttpServlet类.Struts的启动通常从 加载ActionServlet开始 ...
- Struts功能详解——ActionForm
ActionForm ActionForm用于封装用户的请求参数,而请求参数是通过JSP页面的表单域传递过来的.因此应保证ActionForm的参数,与表单域的名字相同. ActionForm ...
- Struts功能详解——ValidatorForm
ActionForm和ValidatorForm区别: 一个Form继承了ValidatorForm 就不用写具体的验证,但是需要提供:validation-rules.xml 和 val ...
- dom对象详解--document对象(二)
dom对象详解--style对象 style对象 style对象和document对象下的集合对象styleSheets有关系,styleSheets是文档中所有style对象的集合,这里讲解的 ...
- dom对象详解--document对象(一)
document对象 Document对象代表整个html文档,可用来访问页面中的所有元素,是最复杂的一个dom对象,可以说是学习好dom编程的关键所在. Document对象是window对象的一 ...
- 转载]IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本 )
原文地址:IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本作者:佐佐木小次郎 因为最近项目上要用有关LBS的功能.于是我便做一下预研. 一般说来LBS功能一般分为两块:一块是地理 ...
- UIViewController中各方法调用顺序及功能详解
UIViewController中各方法调用顺序及功能详解 UIViewController中loadView, viewDidLoad, viewWillUnload, viewDidUnload, ...
- .NET ORM框架 SqlSuagr4.0 功能详解与实践【开源】
SqlSugar 4.0 ORM框架的优势 为了未来能够更好的支持多库分布式的存储,并行计算等功能,将SqlSugar3.x全部重写,现有的架构可以轻松扩展多库. 源码下载: https://gith ...
- PHP 5.2、5.3、5.4、5.5、5.6 对比以及功能详解
php5.2.x php5.3.x php5.4.x php5.5.x php5.6.x 对比详解 截至目前(2014.2), PHP 的最新稳定版本是 PHP5.5, 但有差不多一半的用户仍在使用已 ...
随机推荐
- python -- 小数据池 is和 == 再谈编码
1.小数据池 python程序是由代码块构成的,一个代码块的文本作为python程序的执行单元. 代码块:一个模块,一个函数,一个类,甚至一个command命令都是一个代码块,一个文件也是一个代码块, ...
- 使用idea搭建maven项目,结果spring-mybatis.xml文件报红“Cannot resolve file 'jdbc.properties' less... (Ctrl+F1) Inspection info:Spring XML model validation”
错误如下图: 解决方案: 暂时只是使用右下角的highlightinglevel来屏蔽,拖动到最左边就行了
- lr介绍
---恢复内容开始--- loadrunner是通过agent进程来监控各种协议的客户端和服务端的通信: init和end不能进行迭代,action才能迭代(参数化才有作用) init(比如说有50个 ...
- Redis-安装篇
Redis Cluster搭建 需求:创建6个节点,3主3从127.0.0.1:6379127.0.0.1:6380127.0.0.1:6381127.0.0.1:6382127.0.0.1:6383 ...
- docfx chocolatey安装方法
这两天在git下载的docfx.zip .在安装过程中总是闪退,而加入环境变量后,执行提示:config file docfx.json does not exist.所以我选择chocolatey ...
- Android反编译apk并重新打包签名(Mac环境)
工具下载 apktool :https://ibotpeaches.github.io/Apktool/install dex2jar:https://github.com/pxb1988/dex2j ...
- 4ci
- XAMPP本地服务器打不开解决方案
第一步:先开启相关服务:如图 第二步:在浏览器上输入localhost:端口号,(或127.0.0.1:端口号),按回车,就成功登陆本地服务器. =========================== ...
- angular 定时函数
注入$interval,$timeout 服务 2.定义函数 var aa = $interval(function(){ $timout(function(){ ..... }) },,定时时间 ...
- IDEA新建项目时,没有Spring Initializr选项
换了台新电脑,然后重新安装了Intellij IDEA,创建spring boot项目的时候找不到Spring Initializr选项了. 然后百度了下,发现有前辈做出了回答,就复制存到了自己随笔里 ...