從動態表單得到的一些思考

來源:互聯網
上載者:User

    前些日子有一位前輩說如果一個C#出身的專案經理來領導一群java程式員,那麼這些多半會瘋掉。java相對於C#而言開發效率比較低。

    在javaWeb開發總是有一大堆的設定檔要去配置和修改,隨著工程的進展,這些設定檔的內容極具增長。比如在Struts1.2中要去配置FormBean,如果工程中Form很多的時候,配置FormBean的設定檔自然就會分開寫一個檔案,設定檔的管理從一堆一疊分離到根據不同需要來書寫,但是FormBean這些類還是無法避免,這樣導致類的數量變得龐大。

    當然,面對所有的軟體開發過程中的恐慌,重複,人類藝術家們總能夠尋找到解決之道。java軟體開發的靈活性在這些地方清晰可見。有這樣的一種現狀:比如Struts +Hibernate+Spring實戰寶典啊,架構學習等等一些書中,發現作者總是有意無意的告訴讀者,這些架構的東西是為瞭解決大型項目中遇到的問題,將開發人員從重複的勞動中解救出來,更專註與項目的實際商務邏輯的處理。

    程式員們從來都不缺乏時間,但是從來都不會浪費時間。架構是開發人員的自救之路,也是面對軟體危機藝術家們採取的一種解決方案。

    毫無疑問,在我感到重複編寫FormBean類的時候,我總是偷一下懶,嘗試尋求新的路徑來避免這樣的工作。對於程式員來將,偷下懶的時間越多越有成就感。

   架構的優勢就體現出來了。

   如下代碼:

   

 
  1. <h1> 
  2.             動態ActionForm 
  3.         </h1> 
  4.         <hr> 
  5.         <form action="dynaAction.do" method="post"> 
  6.             姓名: 
  7.             <input type="text" name="userName" id="userName" /> 
  8.             年齡: 
  9.             <input type="text" name="userAge" id="userAge" /> 
  10.             <input type="submit" value="提交" /> 
  11.             <input type="reset" name="重設"> 
  12.  

 
  1.         </form> 

   這樣的一個提交表達,當然要寫一個FormBean。可是下面的動態配置就可以避免這樣的代碼編寫。

 

 
  1. <!-- 配置動態ActionForm --> 
  2.     <form-beans> 
  3.         <form-bean name="dynaForm" 
  4.             type="org.apache.struts.action.DynaActionForm"> 
  5.             <form-property name="userName" type="java.lang.String" /> 
  6.             <form-property name="userAge" type="java.lang.Integer" /> 
  7.  

 
  1.         </form-bean> 

    設定檔中對FormBean進行配置,配置後的FormBean的類型是DynaActionForm它繼承了ActionForm因此作用是一樣的,但是這樣避免了類的數量的增加。

    其實在Java開發中這樣的處理問題的思路還是很多的。Hibernate的實體映射設定檔使用註解寫在java代碼中,提高效率。JPA,Spring在具有檔案配置的同時也都採用了註解。

    思來想去,面對這麼龐雜的知識點,怎樣才能從容以對?輕量級架構,重量級架構,還有什麼超輕量級架構。同一問題不同的解決方案,沒有對與錯,全在圍繞著效率,方便,開放,耦合度,易讀,安全等等展開。

    當創造一樣東西的時候,並不能毀滅一樣東西,只能交給時間來處理,不過只要解決了當前最為重要最為緊迫的問題之後,我們有必要讓這個親手創造來的東西活的更久一些。

本文出自 “野馬紅塵” 部落格,謝絕轉載!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.