# re: J2EE Development without EJB讀后隨筆 回復 更多評論
2006-05-17 10:21 by
J2EE Development without EJB 胡扯?
# re: J2EE Development without EJB讀后隨筆 回復 更多評論
2006-05-18 08:54 by
他是理論上批判
你是實際上應用
根本不是用一個理念, 哪有矛盾嘛
# re: J2EE Development without EJB讀后隨筆 回復 更多評論
2006-05-18 13:49 by
看了各位的評論,有點個人看法:
1、理論的批判和現實的應用
如果一個架構在理論上被人批判,那這個人必需得從應用的角度舉出實例來支持他的觀點。如果一個架構理論上都不行,那按照這個理論指導出的實踐又能怎么樣呢!
如果ROd Johnson只是在理論上對EJB進行了批判,我想那是毫無說服力的。而恰恰相反,他在書中對于同一Application,列舉了四種架構,兩種EJB架構,兩種非EJB架構。從應用的角度(系統的資源開銷、代碼的可測試性、可維護性、組件模型和企業服務的整合(EJB容器)和分離(Spring)),以他的觀點闡述了EJB架構的缺點和他強烈推薦的Sping架構的好處。如果說他只是理論上的批判,我認為不合適。
2、說我胡扯,我不知道我到底哪里不對了。我所列出的種種EJB的缺點,都是書中詳細描述的(在看了sun最新發布的java EE5.0后,特別是EJB3.0確實對一些缺點做出了改進。可見他的一些批判還是很對的)。我的應用(EJB 讓我體會到的實惠)只是在“經典”的J2EE的這個架構下實施的,不排除我“不識廬山真面目,只緣身在此山中”的原因。我并不是把我在EJB中得到的“快捷便利”,和Rod Johnson的理論批判混為一談。
要說原因,只能說是我沒用過Sping,不知道他的架構是不是略勝一籌。都說不怕不識貨,就怕貨比貨,只有你真正應用、比較才能得出你的真實體會。
# re: J2EE Development without EJB讀后隨筆 回復 更多評論
2006-08-03 10:31 by
其實無所謂ejb的好壞,關鍵是你怎么用他
3.0以前的entity bean是被人病詬的最多的了,sun的思路是好的,但是也許是實在太重量級了,90%的應用里開發人員完全可以選擇hibernate,toplink這類更加輕巧靈活的持久化方案,而像entity bean提供的例如分布式事務處理之類的強大功能無異于屠龍之技,事實上要涉及到包含在一個事務里的多數據庫操作的應用極少,就算有人家也都在用TUXEDO之類的成熟中間件技術。于是SUN吸取了教訓,3.0的persistences 直接就實施于hibernate一系列持久化方案之上,至少我還覺得不錯。
至于session bean,我倒現在也沒看出來有太大的不好,Web Server和Application Server的分離在確實需要分布式計算的環境里有什么問題?
當然你的server端只是用來處理一些類如圖書信息存儲的簡單工作,自然是沒必要,但是如果你的server端跑著一個計算量極大的應用呢?
EJB是一個為組件化分布式計算而生的技術,和Spring為首的開源框架的目的是有差別的。站在一個用戶的角度,你說哪個好,哪個差,不過是你自己的項目究竟適用哪種技術罷了。就好像你一個非常簡單的web應用,你非要在server端的數據庫調用的時候用web service,然后發現奇慢無比,然后罵web service是垃圾。web service說我怨啊....
當然我們也應該看到ejb也是不斷發展和進步的,就好像ejb3.0里面,不也開始大量使用Spring引以為榮的依賴注入了么,同樣我們也能看到AOP的身影在閃耀。
說到底,技術不過是用來解決問題的,純粹為了技術而技術是李宇春的。