您的位置:首页 > 移动开发

Struts功能详解——ActionMapping对象

2012-05-02 10:17 246 查看
在一个web应用中,每个资源都必须通过URI来进行引用。 资源包括HTML页面,JSP页面,和定制动作。为了给定制动作一个 URI或者说路径,Struts框架提供了一个 ActionMapping对象。 ActionMaping也是Struts的一个核心对象,通常我们不用手写ActionMapping类,它只需要在配置文件中配置就行。

ActionMapping如何配置:

ActionMapping在配置文件Strtus-config.xml中配置,配置格式如下:
<struts-config>
<action-mappings>
<actionpath="/login"
type="com.bjpowernode.struts.LoginAction"
name="loginForm"                
scope="request"                
>
<forwardname="success" path="/login_success.jsp" />
<forwardname="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的信息,在程序执行的过程中,查阅这个数据字典,然后达到相应的位置,执行完成以后,再查询这个数据字典,转发特定的信息。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: