早打算給wmframework寫一個成長日志啦,可是一直沒時間,也不曉得,我的時間都被用了干什么啦。wmframework是我自己的一個框架,一個自己琢磨出來的,居于j2EE的系統的解決方式。開始籌劃寫wmframework,應該是源于2006做深圳做項目開始吧,當時從那個項目中,我看到了XML的強大使用。基于此,讓我花了一些時間去深入了解XML,不敢說深入了解,起碼算是入門級別吧。也是這樣,wmframework數據傳輸,我一直僅考慮使用XML封裝的方式。在以后文章中我主要結合jsp+js+xml+ajax+struct+spring+ibatis來介紹我的wmframework。
還沒介紹wmframework是什么泥,wmframework是我自己創作的一個web系統框架,目前已經發展到2.0版本,w是自己英文名的開頭,m是我生命中另一個人的英文名的開頭(別見笑啊)。wmframework提倡拋棄常規瀑布式,一站式的開發模式,提出使用MVC組合流水作業形式開展代碼的編寫過程。這里沒說清楚,我再解釋下,大伙都知道,我們常規的軟件代碼編寫,都是將具體的功能模塊分配到項目組成員的頭上,它將完成從前臺的jsp表現頁面繪畫,js輔助腳本的編寫,到后臺action的編寫,model的設計,orm交換數據的實現。而結合wmframework框架將改變這樣的編寫流程,程序員不再專注于單個模塊的編寫,而是依據個人能力的分工協作。 M_actor 模型執行者完成后臺業務處理模型,主要就是數據交互層Dao,sqlmap的編寫;V_actor 視圖執行者完成前臺表單視圖,主要就是jsp,html,js的編寫;C_actor 控制器執行者完成action和模型層service的編寫;我前面的博客有相關MVC組合模式開發的介紹,有興趣可以去看《用WM framework進行MVC團隊組合模式的系統開發》一文。
下面我簡要介紹下wmframework一個業務處理的流程。表現層jsp,由html靜態標簽+部分自定義的標簽實現,在html靜態標簽中,我添加了幾個自己定義的屬性主要有issave,fieldname,require,datatype.當然這樣的屬性是可以自己取名的,因為html的dom對象本身就支持這樣的功能,你可以在標簽中增加自己定義的屬性,通過js對象識別的時候,能主動獲得當前屬性的值,這點大伙可以去測試下。jsp展現的完成,下面就是數據的校驗和數據的封裝啦,這里wmframework通過調用公用的js對象來完成(你僅需要在給靜態標簽中針對剛才的屬性做相應的賦值即可),針對一個保存操作你可能僅需要編寫10行的js腳步即可完成數據的校驗和提交。頁面表單數據最終校驗通過后,將被封裝在一個XML中,并由XMLHTTPRequest對象發送到后臺,整個表現層的提交工作宣告結束;接下來,說action的處理,action獲得當前請求后從htttprequest對象中讀取當前提交的表單數據串,通過XmlMapping對象完成xml字符串到pojo對象的轉換,最終交給service的將是用list桶裝的pojo對象,這里之所以用list桶裝,主要是方便一次交付多個相同或不同的數據對象以完成不同的數據操作,service對象接收list后,進行必要的數據校驗,并交付給dao使用,在dao中拆分當前list桶,獲得其pojo對象,并調用ibatis內置API,與數據庫通信完成數據的處理操作。request請求完成,response響應消息的返回,wmframework也是通過xml封裝串來完成的,同樣通過XMLHTTPRequest讀取resposeText/resposeXML獲得響應消息,并解析當前xml封裝串,來進行jsp表現層的初始化和用戶提示操作。整個流程大致就是這樣,給出個簡單的時序圖。

其實從上面的介紹來看,你可能覺得wmframework流程操作很是簡單,這樣的流程是否配得上框架這個稱號,這里我就不進行辯護啦,自我感覺良好下就行,o(∩_∩)o...哈哈。其實wmframework就是提倡用很簡單的流程來完成模塊的編寫操作,用wmframework完成系統代碼的編寫操作,很多時候,整個系統我們需要的action,service,dao僅需要幾個,同時也拋棄太多javabean的冗余配置,而不是以往的一個模塊對應一個action,service,dao體系。簡化action,service,dao編寫過程,最大程度加快了開發的速度。
這是wmframework的開篇曲,主要還是以大體介紹wmframework的為目的,應該說是一個序言更為貼切吧。在以后的文章中我將逐步去介紹wmframework,因wmframework已經牽連幾個生產系統,故不能開放其源代碼(別介意)。不過源代碼沒太多的用處吧,能了解其設計思想才是最基本的,畢竟寫代碼都是這點事情都是外人看著復雜,行人知道簡單的事情嘛,這玩意兒和小學生寫作文一樣,沒太多的說道,不過其設計思想就重要啦,因為任何一個framework都是基于一個構架的設計來完成的嘛。。。。。。
先寫到這里吧,吃飯去啦。。。。。。。。。
(注:本人文章均為原創,轉載請注明出處!20100523寫于深圳。)
一篇好的文章應該如一壇佳釀,未償已久醉于心;或如一壺好茶,品嘗之間回味無窮;或如與心愛的人共進晚餐,僅餐秀色足以飽食。我不妄想自己的文章能驚世駭俗,但始終期待有“和旋之音,擊缶之伴”。
posted on 2010-07-21 21:46
刀光劍影 閱讀(1270)
評論(2) 編輯 收藏