liuyinhuan 发表于 2013-2-6 10:53:06

初识Struts(六)----ActionMapping

 理解ActionMapping:
 
      struts-config.xml文件中每个<action>标签都对应一个ActionMapping实例对象。<action-mappings>将特定请求映射到特定Action的相关信息存储在ActionMapping中,ActionServelt将ActionMapping传送到Action类的execute()方法,Action将使用ActionMapping的findForward()方法,此方法返回一个指定名称的ActionForward,这样Action就完成了本地转发。若没有找到具体的ActionForward,就返回一个null.
各属性的含义如下:
      * path: 指定该Action接收的特定请求
<span style="" />
       * type: 指定该Action的类绝对路径
<span style="">
       * forward: 只作页面跳转时可使用,用来减少Action数量.注意:这个不是<forward>标签

           如:
      <action path="/login1"            forward="/login.jsp">      </action> 上面的配置表明该Action接收页面的login1.do请求,然后不作任何逻辑处理直接跳转到login.jsp页面, 这样就避免了只为跳转而写Action
 
      * name: 指定该Action关联的ActionForm
<span style="" />
      * scope: 默认为session,一般不是session范围要用到的数据不要设到session中,这样会无谓增加session负载,故尽量设成scope=request
<span style="">
      * validate: 默认为false,设为true时会在页面收集数据前自动调用ActionForm中的validate方法
<span style="">
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;">       * input: 错误处理,如:<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;">   <action path="/login1"            type="cn.huan.struts.LoginAction"             name="loginForm"             scope="request"             validate="true"             input="/login1.jsp">         <forward name="success" path="/login_success.jsp"/>               </action>
页: [1]
查看完整版本: 初识Struts(六)----ActionMapping