<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 路人

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

    主站蜘蛛池模板: 老司机午夜在线视频免费观| 亚洲爆乳AAA无码专区| 99免费在线视频| 综合久久久久久中文字幕亚洲国产国产综合一区首 | 久久国产精品一区免费下载| 区三区激情福利综合中文字幕在线一区亚洲视频1 | 免费国产va视频永久在线观看| 午夜精品在线免费观看| 男人天堂2018亚洲男人天堂| 最近中文字幕mv免费高清视频7| 国产.亚洲.欧洲在线| 好大好深好猛好爽视频免费| 亚洲色最新高清av网站| 女人被男人桶得好爽免费视频| 亚洲男人天堂2018av| 免费看的成人yellow视频| 精品久久亚洲一级α| 亚洲国产成人精品91久久久| 一级特黄aaa大片免费看| 在线亚洲人成电影网站色www| 伊人免费在线观看| 亚洲综合无码一区二区三区| 在线观看的免费网站| 亚洲AV成人一区二区三区观看| 免费在线观看一级毛片| a级毛片无码免费真人久久| 久久精品国产亚洲av影院| 毛片a级三毛片免费播放| 免费无码一区二区| 久久亚洲国产成人亚| 免费做爰猛烈吃奶摸视频在线观看| 亚洲av午夜电影在线观看| 中文字幕专区在线亚洲| 日本zzzzwww大片免费| 激情小说亚洲色图| 亚洲av永久无码精品国产精品| 久热中文字幕在线精品免费| 国产大陆亚洲精品国产| 老司机亚洲精品影院无码| 国产在线观看免费不卡| 日韩免费无码视频一区二区三区|