隨筆 - 9, 文章 - 0, 評論 - 3, 引用 - 0
          數據加載中……

          FormBean 與 POJO 的集成

           
          代碼
          <form-bean name="loginForm" type="org.apache.struts.validator.DynaValidatorForm">

          <form-property name="user" type="org.layout.model.User"/>

          </form-bean>

          在校驗文件validation.xml中:

          代碼
          <form name="loginForm">
          <field property="user.name" depends="required,minlength,maxlength">
          <arg0 key="label.username"/>
          <arg1 key="${var:minlength}" name="minlength" resource="false"/>
          <arg2 key="${var:maxlength}" name="maxlength" resource="false"/>
          <var>
          <var-name>maxlength</var-name>
          <var-value>16</var-value>
          </var>
          <var>
          <var-name>minlength</var-name>
          <var-value>2</var-value>
          </var>
          </field>
          <field property="user.password" 
          depends
          ="required,minlength,maxlength">
          <arg0 key="label.password"/>
          <arg1 key="${var:minlength}" name="minlength" resource="false"/>
          <arg2 key="${var:maxlength}" name="maxlength" resource="false"/>
          <var>
          <var-name>maxlength</var-name>
          <var-value>16</var-value>
          </var>
          <var>
          <var-name>minlength</var-name>
          <var-value>2</var-value>
          </var>
          </field>
          </form>
          在action中如下調用:
          代碼
                  DynaActionForm aForm = (DynaActionForm)form;
                  ActionMessages messages 
          = form.validate(mapping, request);
                  
          if(!messages.isEmpty())
                  
          {
                      saveMessages(request, messages);
                      
          return mapping.findForward("prompt");
                  }

                  User user 
          = (User)aForm.get("user");
                  UserDAO userDAO 
          = (UserDAO)getWebApplicationContext().getBean("userDAO");
                  user 
          = userDAO.get(user.getName(), user.getPassword());
          其實這樣子的集成感覺很不錯的,除了少了dto和轉換(至少你要用一個copyProperty吧),pojo實現了序列化,
          甚至可以直接深入到Hibernate底層,這樣子就省缺了以前一直討論formbean和po是不是合并或者在哪個層面上進
          行轉換。

          posted on 2007-10-29 15:54 空杯 閱讀(327) 評論(0)  編輯  收藏 所屬分類: Struts

          主站蜘蛛池模板: 台中市| 临江市| 东宁县| 五华县| 汉沽区| 涟源市| 梓潼县| 格尔木市| 沭阳县| 内黄县| 南城县| 山西省| 大兴区| 格尔木市| 石屏县| 蓬莱市| 杭锦后旗| 巴中市| 大连市| 宣恩县| 惠安县| 乡城县| 隆尧县| 浙江省| 通海县| 康保县| 朝阳市| 扶沟县| 恩施市| 南溪县| 府谷县| 板桥市| 康乐县| 海晏县| 股票| 邳州市| 阿拉善盟| 屏东县| 普格县| 长沙市| 安新县|