<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 閱讀(4068) 評論(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无码XXX麻豆艾秋| 香蕉视频在线观看免费国产婷婷| 亚洲人精品亚洲人成在线| 成年性午夜免费视频网站不卡| 亚洲综合色丁香婷婷六月图片| 巨胸喷奶水视频www网免费| 久久精品国产亚洲AV电影网| 国产美女无遮挡免费网站| 日韩成人毛片高清视频免费看| 亚洲色欲久久久久综合网| 久久一区二区免费播放| 久久久久亚洲AV片无码| 麻豆视频免费观看| 色婷婷六月亚洲综合香蕉| 国产亚洲精久久久久久无码77777| 国产日韩AV免费无码一区二区 | 9420免费高清在线视频| 亚洲午夜电影一区二区三区| 最近的免费中文字幕视频| 暖暖免费中文在线日本| 亚洲春色在线视频| 一二三四免费观看在线电影| 青青视频免费在线| 亚洲国产精品不卡在线电影| 一区二区无码免费视频网站 | 亚洲午夜av影院| 日韩av无码久久精品免费| 亚洲精品亚洲人成在线| 亚洲欧洲日产国码无码久久99 | 亚洲天堂电影在线观看| 国产免费黄色大片| 毛片在线全部免费观看| 伊人久久亚洲综合影院首页| 国产亚洲AV夜间福利香蕉149| 性xxxxx免费视频播放| 一级毛片免费播放视频| 亚洲国产一区在线观看| 久久久青草青青国产亚洲免观|