struts+spring+hibernate是怎樣的架構

舉一個小例子回答樓主的問題。
加入我要蓋一件小平房(做一個網站),我需要做的是:
1:買一塊地。(租一臺服務器)--1天
2:申請一個門牌號碼(買一個域名)--1天
3:買材料,請2、3個工人,開始蓋房(準備所需要的開發工具IDE什麼的,搭建測試環境,找2,3個程序員--剛畢業的大學生就可以了)。--1周
4:蓋房(敲代碼編程)--1到3個月。
5:房子蓋好了,東敲敲西敲敲看牢不牢固(自己測試一下功能都齊全了沒)--1周。
6:如果有問題,比方說臥室不夠透氣,把臥室的牆多開一扇窗戶(哪個頁面有問題,刪除重新寫一個)。比方說牆裏面的電線發現有問題,把牆鑿開,換一根電線。
6:完工。

總共耗時2-4個月左右。
現在我要蓋一棟大樓(開發一個企業級項目),本質上還是蓋房子,但是如果就像蓋小平房一樣的去做。結果是怎樣的呢?
蓋到18樓了,突然說5樓內測的電線堵住了,5樓以上都沒有點,於是得把5樓以上的全拆了,拆到5樓,把牆鑿開,把電線換一根,再繼續往上面蓋。
相信沒有哪棟大廈是這樣蓋出來的。

於是有了建築師(軟件架構師)這個職位,有了建築設計學(軟件架構學)這麼個說法。
蓋大樓,一開始的步驟是這樣的。
地還是要買,不過得做土地勘察,樣本採集,看地質如何。
然後得畫圖紙,這圖紙一畫就是很久,要考慮到整棟大樓的方方面面,哪些牆可以供拆除,就在裏面放電線水管什麼的。哪些是主力牆不能拆除。這裏賣弄的學問太多,筆者也無法弄清楚。

然後就是打地基。這也是相當重要的環節,地基沒打好,整個房子都不穩固。然後就是用鋼筋水泥等,打造整棟大樓的框架。讓房子非常堅固。

再後纔是逐步完善大樓內部,一層層的砌磚,一間間地粉刷,裝修。就算某一塊出了問題。去掉或者修復那一塊就行了,整棟大樓屹立不倒,穩穩當當。

企業級項目中,也是同安的過程。
先用UML建模,建立數據庫模型,項目的分層架構設計,使用框架讓整個項目健壯起來,動一處而不會牽動全身。

struts,spring,hibernate都是爲了讓項目更健壯而產生的。如果只是要做一個小網站,我覺得很沒有必要使用這些東西,就ASP,PHP一定能做得更快,就像蓋小平房一樣。就算要用Java,就用JSP+JavaBean就行了。如果是開發企業級項目,ASP和PHP是絕對不能跟J2EE相提並論的。

Struts是MVC框架,它的作用不是讓人能幹什麼(它能做的事JSP都能做),它的作用是不能讓人幹什麼。就好像,設計師要砌牆工人在哪裏砌磚,他就不能去別出砌一樣。給程序語言嚴格的規範,讓它按照規範走,不會隨心所欲地去編代碼。這樣可以保證項目的高度一致性。

Spring是J2EE輕量級框架。它的做法好比把項目分成一個個地組件,哪一塊出了問題,換掉那一塊就是了。別的地方根本不用動。就好像我剛剛舉的5樓電線出了問題,就在5樓把牆鑿開,換一個電線即可,不用擔心5樓的牆鑿開上面的會塌下來。

Hibernate是ORM工具,不能稱之爲框架,它至少至少有一個好處,在項目做移植數據庫的時候,不用切換數據庫層的代碼。當然它的好處很多。筆者在所有的開源技術中,也最鍾情對Hibernate的研究。

不過這些問題,都只有在很大的項目開發中纔會用到。所以如是是小項目開發,不建議使用J2EE.

轉載自百度知道:http://zhidao.baidu.com/question/30659246.html?qbl=relate_question_1&word=spring%20hibernate%20%C4%C7%B8%F6%BC%F2%B5%A5
發佈了14 篇原創文章 · 獲贊 4 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章