zoukankan      html  css  js  c++  java
  • DynaActionForm(动态ActionForm)的使用

    在struts中利用DynaActionForm(动态ActionForm)可以节省代码的编写。

    1.在struts-config.xml中配置DynaActionForm:加入这个Form中有三个属性

    <form-bean name="MyDynaActionForm"  type="org.apache.struts.action.DynaActionForm">
      <form-property name="propertyOne" type="com.enrising.cpmis.web.dto.setup.propertyOne"/>
      <form-property name="propertyTwo" type="java.lang.Object"/>
      <form-property name="rebuildByDisaster" type="model.RebuildByDisaster"/>

    </form-bean>

    <action
      path="/attchment"
      type="web.struts.action.common.AttchmentAction"
      name="MyDynaActionForm"
      scope="request"
      parameter="method"
      unknown="false"
      validate="true"
    >
    <forward name="initattachment" path="/business/common/annex.jsp" redirect="false"/>
    </action>

    2.jsp页面

    <html:form action="/capitalSplitAction.do" method="post">

    <html:hidden property="propertyOne.activityId" styleId="activityId" />
    <bean:define id="dto" name="capitalSplitActionForm"
    property="propertyOne" />
    <table class="table" cellspacing="0" cellpadding="0">

    <tr><td><html:hidden property="propertyOne.planName" /></td></tr>

    <tr><td><html:hidden property="propertyTwo.planNameTwo" /></td></tr>

    <tr><input name="submit1" type="button" class="bt_xiafa" value="下达" onclick="submitCapital();"></td></tr>

    </table>

    3.在Action中我们可以通过map的get方法来得到页面传到后台的Form属性对象(这个Action继承DispatchAction)

    public ActionForward submitCapital(ActionMapping mapping,ActionForm form,HttpServletRequest request,
                              HttpServletResponse response) throws Exception {

      PropertyOne propertyOne = (PropertyOne)((DynaActionForm) form).get("propertyOne"); //得到页面传到后台的属性对象

      PropertyTwo propertyTwo= (PropertyTwo)((DynaActionForm) form).get("propertyTwo");

      //从而通过这个对象来得到它的属性

      String planName = propertyOne.getPlanName();

      ……

      //同理注册一个DynaActionForm

      ((DynaActionForm) form).getMap().put("PropertyOne", propertyOne); 

      

    }

  • 相关阅读:
    PHP实现URL长连接转短连接方法总结
    session共享原理以及PHP 实现多网站共享用户SESSION 数据解决方案
    session跨域共享解决方案
    MySQL 对于千万级的大表要怎么优化?
    防sql注入方法
    MYSQL性能优化分享(分库分表)
    mysql 分库分表
    mysql 性能优化方案
    MYSQL 优化常用方法
    第一站---大连---看海之旅
  • 原文地址:https://www.cnblogs.com/javatech/p/3681400.html
Copyright © 2011-2022 走看看