<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    love fish大鵬一曰同風起,扶搖直上九萬里

    常用鏈接

    統計

    積分與排名

    friends

    link

    最新評論

    Struts ActionForm的優化寫法(轉)

    要點:
      在ActionForm定義值對象company,定義Setter/Getter方法;
      在JSP里對input元素的名稱稍加變化,加company前綴,company.cp_name。
      Struts能把company.cp_name的值自動地Populate到對象company,填充cp_name屬性。

    效果:
      簡化ActionForm對屬性的定義,實際上系統只需要保留ValueObject和PersistObject兩類對象。
      本質上是借用值對象ValueObject作為ActionForm的傳值對象。
     
    變化:
      當頁面元素來自不同類值對象時,例如Company,Bulletin等,分別寫不同的前綴,company.cp_name,bulletin.bl_title。
      對于不屬于任何值對象的元素,照基本寫法寫。

    ===
    示例代碼

    ** 傳統寫法:
    //CompanyForm.java

    package com.ticket.company.actionform;
    import javax.servlet.http.*;
    import org.apache.struts.action.*;
    import com.ticket.entity.company.*;

    public class CompanyForm
        
    extends ActionForm {

        
    private String cp_name;            //名稱
        private String cp_phone;           //電話
        private String cp_fax;             //傳真

        
    public String getCp_name() {
            
    return cp_name;
        }


        
    public void setCp_name(String cp_name) {
            
    this.cp_name = cp_name;
        }


        
    public String getCp_phone() {
            
    return cp_phone;
        }


        
    public void setCp_phone(String cp_phone) {
            
    this.cp_phone = cp_phone;
        }


        
    public String getCp_fax() {
            
    return cp_fax;
        }


        
    public void setCp_fax(String cp_fax) {
            
    this.cp_fax = cp_fax;
        }


        
    //其他代碼
    }


    ** 優化寫法:

    //CompanyForm.java

    package com.ticket.company.actionform;

    import javax.servlet.http.*;
    import org.apache.struts.action.*;
    import com.ticket.entity.company.*;

    public class CompanyForm
        
    extends ActionForm {

        
    public Company company = new Company();

        
    public Company getCompany() {
            
    return company;
        }


        
    public void setCompany(Company company) {
            
    this.company = company;
        }


        
    //其他代碼
    }


    //company_add.jsp

    要點:
      在ActionForm定義值對象company,定義Setter/Getter方法;
      在JSP里對input元素的名稱稍加變化,加company前綴,company.cp_name。
      Struts能把company.cp_name的值自動地Populate到對象company,填充cp_name屬性。

    效果:
      簡化ActionForm對屬性的定義,實際上系統只需要保留ValueObject和PersistObject兩類對象。
      本質上是借用值對象ValueObject作為ActionForm的傳值對象。
     
    變化:
      當頁面元素來自不同類值對象時,例如Company,Bulletin等,分別寫不同的前綴,company.cp_name,bulletin.bl_title。
      對于不屬于任何值對象的元素,照基本寫法寫。

    ===
    示例代碼

    ** 傳統寫法:
    //CompanyForm.java

    package com.ticket.company.actionform;
    import javax.servlet.http.*;
    import org.apache.struts.action.*;
    import com.ticket.entity.company.*;

    public class CompanyForm
        
    extends ActionForm {

        
    private String cp_name;            //名稱
        private String cp_phone;           //電話
        private String cp_fax;             //傳真

        
    public String getCp_name() {
            
    return cp_name;
        }


        
    public void setCp_name(String cp_name) {
            
    this.cp_name = cp_name;
        }


        
    public String getCp_phone() {
            
    return cp_phone;
        }


        
    public void setCp_phone(String cp_phone) {
            
    this.cp_phone = cp_phone;
        }


        
    public String getCp_fax() {
            
    return cp_fax;
        }


        
    public void setCp_fax(String cp_fax) {
            
    this.cp_fax = cp_fax;
        }


        
    //其他代碼
    }


    ** 優化寫法:

    //CompanyForm.java

    package com.ticket.company.actionform;

    import javax.servlet.http.*;
    import org.apache.struts.action.*;
    import com.ticket.entity.company.*;

    public class CompanyForm
        
    extends ActionForm {

        
    public Company company = new Company();

        
    public Company getCompany() {
            
    return company;
        }


        
    public void setCompany(Company company) {
            
    this.company = company;
        }


        
    //其他代碼
    }


    //company_add.jsp

    <form action="companyAdmin.do?action=addConfirm&forward=listAllLevel1" method="post" name="myForm" > 
        
    <tr> 
            
    <td height="23" align="right"  class="bg2">單位名稱: </td>
            
    <td width="85%">
                
    <input name="company.cp_name" type="text" maxlength="25" size="50" height="16">
                
    <font color="#FF0000">*</font>
            
    </td>
        
    </tr>
        
    <tr>
            
    <td height="23" align="right"  class="bg2">電  話:</td>
            
    <td width="85%">
                
    <input name="company.cp_phone" type="text" maxlength="20" size="30" height="16">
            
    </td>
        
    </tr>
        
    <tr>
            
    <td height="23" align="right"  class="bg2">傳  真:</td>
            
    <td width="85%">
                
    <input name="company.cp_fax" type="text" maxlength="20" size="30" height="16">
               
    </td>
        
    </tr>
    </form>

     


     

    posted on 2007-05-16 14:25 liaojiyong 閱讀(4069) 評論(4)  編輯  收藏 所屬分類: Struts

    評論

    # re: Struts ActionForm的優化寫法(轉)[未登錄] 2008-06-30 12:00 jack

    博主太厲害了,我正在為此發愁呢  回復  更多評論   

    # re: Struts ActionForm的優化寫法(轉) 2008-11-30 21:40 shuiguo639

    所謂的“優化”,是指使用form時可以根據需要來調用company類的屬性。這樣的優化對于有大量屬性的而又被頻繁調用的類來講的確不錯。  回復  更多評論   

    # re: Struts ActionForm的優化寫法(轉)[未登錄] 2009-06-10 09:19 小生

    不是還要多寫一個Company類  回復  更多評論   

    # re: Struts ActionForm的優化寫法(轉) 2010-12-20 10:18 路人

    對我有幫組 謝謝  回復  更多評論   

    主站蜘蛛池模板: 亚洲av无码无在线观看红杏| 亚洲中文字幕无码中文| 手机看黄av免费网址| 亚洲成aⅴ人片久青草影院按摩| 亚洲AV无码一区二三区| 一级毛片免费不卡在线| 亚洲国产成人久久精品大牛影视| 日韩亚洲变态另类中文| 免费精品国产自产拍在| 一区二区三区在线免费| 激情五月亚洲色图| 国产亚洲精品国产| 爽爽日本在线视频免费| 一区二区三区福利视频免费观看| 亚洲AV无码精品国产成人| 亚洲AV成人片色在线观看高潮| 日本牲交大片免费观看| 91精品国产免费网站| 春意影院午夜爽爽爽免费| 亚洲伊人久久大香线蕉影院| 亚洲一区二区三区AV无码| 成人免费午夜视频| 免费看搞黄视频网站| 美女被艹免费视频| 亚洲sss综合天堂久久久| 亚洲乱码中文字幕久久孕妇黑人| 大学生美女毛片免费视频| 免费不卡在线观看AV| 国产精品免费久久久久电影网| 狠狠色伊人亚洲综合网站色| 亚洲色欲色欲综合网站| 亚洲精品视频免费观看| 免费看大黄高清网站视频在线| 巨波霸乳在线永久免费视频| 72pao国产成视频永久免费| 亚洲av无码专区首页| 亚洲av无码不卡久久| 激情内射亚洲一区二区三区| 久久亚洲欧洲国产综合| 男人的天堂亚洲一区二区三区| h视频在线免费看|