自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

EJB和Spring全面比較

開發(fā) 后端
本文介紹EJB和Spring全面比較,包括Java職位列表對Spring技能的需求已經(jīng)超越了EJB。

Rod Johnson將Indeed.com(一個求職網(wǎng)站)職位列表中對EJB和Spring兩種技能的需求數(shù)量進行了對比,并通過分析這一統(tǒng)計數(shù)據(jù)得出了一些關(guān)于EJB的發(fā)展過程及其未來的結(jié)論。他圍繞著會話Bean和消息Bean對EJB展開了討論,并承認JPA做為獨立的規(guī)范是有價值的,JPA“是基于現(xiàn)代技術(shù)并已開始體現(xiàn)其價值”。首先,Johnson闡述了職位要求所體現(xiàn)的趨勢的重要性:

職位列表是技術(shù)真正被采納的良好指示器。它們表明公司是否把錢花在了“刀刃”上;它們?yōu)殚_發(fā)人員指明獲取、增強相關(guān)技能的重要性(這是技術(shù)延續(xù)的一個重要因素);它們還為公司穩(wěn)妥地采用特定技術(shù)提供了良好的指導(dǎo)。

隨后,Johnson介紹了下面這個EJB和Spring圖表。該圖表顯示,截止到2007年11月,Java職位列表對Spring技能的需求已經(jīng)超越了EJB。他認為倘若現(xiàn)在基于EJB的應(yīng)用數(shù)量仍相當(dāng)可觀的話,那是很令人驚詫的。

Java職位列表

Johnson評論這些趨勢的時候有些洋洋自得,因為他2003年以來就預(yù)言EJB會因他在J2EE without EJB一書中描述的那些缺點而失去其實用性。甚至在他看來,EJB3.0新的改進也不足以遏制這種趨勢:

EJB 3.0改進了一些事情,但還是太少、太遲:依賴注入(DI)的能力不足以滿足實際需要;攔截API認識到了需要有一個對橫切關(guān)注點的解決方案,但我們看到的還是一個最差、最笨重、最容易出錯的解決方案(我一直想在博客上發(fā)布的一些東西);由于要兼容那些現(xiàn)在已不相關(guān)的舊有技術(shù),把它拖累了;沉重的EJB契約(它比“簡化的編程模型”多出數(shù)百頁)需要一個相當(dāng)復(fù)雜的運行時環(huán)境,而且開銷很大;盡管有語法糖(syntax sugar),但它還是不能掩蓋EJB的大量缺陷,例如啟動行為、單例、以及廢棄的線程模型。***,每次改變基礎(chǔ)環(huán)境的時候,它都要有效地綁定到一個應(yīng)用服務(wù)器環(huán)境中去。

接下來,他解釋了對整個行業(yè)及開發(fā)人員個體來說,EJB的衰落意味著什么:

這不是反對標(biāo)準——而僅僅是有選擇性地反對那些無實際意義的標(biāo)準。正如我長期以來一直指出的那樣,Java EE不只是EJB,任何關(guān)心這個平臺的人都應(yīng)該真誠地對待其各部分的質(zhì)量和關(guān)聯(lián)性。

隨著越來越先進的技術(shù),業(yè)務(wù)對象變成了POJOs,對特殊組件模型的依賴在減少,標(biāo)記也變得不那么重要了。

拋棄EJB后會有更好的架構(gòu)靈活性來應(yīng)對需求的變化。隨著SOA和其它力量的興起,公司也越來越多地選擇輕量級的部署平臺。

Johnson總結(jié)到:“由于其絕對數(shù)量仍然相當(dāng)多,EJB不會很快消失。但是趨勢曲線清楚地表明它正在逐漸成為過去”。EJB懷疑論者Rick Hightower也相信EJB仍然會存在一段時間。同時,他還表現(xiàn)出對這種對比方式的關(guān)注:

然而,EJB被廢棄還是比較遙遠的事情,難道不是嗎?把Spring這樣的通用架構(gòu)(比如Spring MVC、Spring WebFlow、Spring XXX)和EJB這樣有側(cè)重點的框架放在一起做比較真的公平嗎?正如從Seam,EJB和Spring的比較圖中看到的一樣,對現(xiàn)有的開發(fā)人員來說,這種相對比較的方式是很不公平的。

EJB3、Seam和Spring的比較

對于象Seam這樣的技術(shù)顯然有一些疏漏,但Seam結(jié)合了EJB 3.0,它也彌補了很多EJB模型原有的缺點,也提供了許多與Spring一樣的優(yōu)點(使用POJOs和IOC等)。依我愚見,它要比Spring更好一些(比如說,它幾乎完全基于注釋,而不是XML)。我不是想打擊Spring,我只是想說結(jié)合了Seam和其它技術(shù)(像JSF)的EJB3提供了一個非??尚械腟pring的替代方法。

假如基于EJB的那些應(yīng)用中有相當(dāng)一部分內(nèi)容是依賴于應(yīng)用服務(wù)器的,而應(yīng)用服務(wù)器恰恰是采用EJB規(guī)范專有的實現(xiàn),那么在一些為它們的核心 Java企業(yè)組件模型權(quán)衡開源框架的公司中,這些趨勢會增加他們的信心。這些對比在表明Spring框架正在走向勝利的同時,不也恰恰表明EJB模型即將開始失去其實用性了嗎?查看英文原文:Spring Overtakes EJB as a Skills Requirement?

【編輯推薦】

  1. EJB技術(shù)的歷史
  2. JavaBean與EJB的不同
  3. 基于EJB技術(shù)的商務(wù)預(yù)訂系統(tǒng)的開發(fā)
  4. EJB的分類及其各自的功能和應(yīng)用
  5. J2EE中EJB的專用術(shù)語解釋
責(zé)任編輯:佚名 來源: IT專家網(wǎng)
相關(guān)推薦

2009-06-26 14:21:08

JDOEJB CMPHibernate

2009-06-12 09:41:07

EJB3.0Spring

2009-06-24 16:16:30

JSF和Tapestr

2009-07-15 16:39:51

AWT和Swing

2009-06-22 16:59:33

POJOSpringEJB 3.0

2009-06-11 15:26:05

EJB組件EJB容器

2009-08-11 14:57:11

比較C#和Java

2009-10-29 09:52:55

OSGi

2009-06-26 14:54:18

Spring支持EJB

2019-04-02 10:50:05

框架Spring開發(fā)

2022-02-14 09:00:00

SQLNoSQL數(shù)據(jù)庫

2009-06-22 16:19:45

JavaBeansEJBPOJO

2009-07-14 16:30:41

Swing與SWT

2009-06-12 12:46:59

EJB3.0

2009-06-11 16:01:17

EJB容器

2009-06-26 14:29:03

2009-06-11 16:53:09

什么是EJBEJB

2009-08-18 10:24:03

Java開發(fā)工具

2009-10-28 13:27:11

2020-07-07 07:00:00

RustGo語言編程語言
點贊
收藏

51CTO技術(shù)棧公眾號