日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

EJB3.0历史

發(fā)布時(shí)間:2023/12/15 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 EJB3.0历史 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

來(lái)源:http://shuixian.javaeye.com/blog/601335


EJB3 .0 歷 史

Java 企業(yè)版APIJava Enterprise Edition ) 中提供了對(duì)EJB 的規(guī)范。EJB 是一個(gè)封裝 有某個(gè)應(yīng)用程序之業(yè)務(wù)邏輯服務(wù)器端組件。EJB 最早于1997 年 由IBM 提出,后被SUN 采用并形成標(biāo)準(zhǔn)(EJB 1.0 EJB 1.1 )。其后在Java 社區(qū)進(jìn)程(Java Community Process) 支持下陸續(xù)有一些JSR 被 制訂來(lái)定義新的EJB 標(biāo)準(zhǔn),分別是JSR 19 (EJB 2.0 ), JSR 153 (EJB 2.1) 以及最新的JSR 220 (EJB 3.0 )

由于IBMSunEJB 提倡者力推其前景,起初一些大公司紛紛采 用EJB 部署他們的系統(tǒng)。然而隨后各種問(wèn)題便接踵而至,對(duì)EJB 的 惡評(píng)短時(shí)間內(nèi)激增。對(duì)于初學(xué)者,EJBAPI 顯 得太過(guò)困難;對(duì)于許多程序員來(lái)說(shuō),書寫那些必須拋出特定異常的接口并將bean 類作為抽象類實(shí)現(xiàn)的 做法既不直觀也不正常。當(dāng)然,EJB 所被賦予的使命,如對(duì)象關(guān)系映射和事務(wù)管理確實(shí)有其天然復(fù)雜 性,但其API 之復(fù)雜還是令開發(fā)人員們覺(jué)得望而卻步,一些人開始懷疑EJB 除了引入了復(fù)雜的實(shí)現(xiàn)手段以外似乎并未帶來(lái)什么實(shí)際好處。

另外,實(shí)際運(yùn)用中被發(fā)現(xiàn),如果使用EJB 來(lái) 封裝業(yè)務(wù)邏輯會(huì)帶來(lái)性能上的下降。這是因?yàn)?#xff0c;最早的EJB 規(guī)范只允許客戶端通過(guò)特定協(xié)議(如CORBA )進(jìn)行遠(yuǎn)程方法調(diào)用,即使大部分實(shí)際應(yīng)用根本就不需要分布式計(jì)算。直到EJB 2.0 才引入了本地接口,以支持可以開發(fā) 不通過(guò)網(wǎng)絡(luò)就能直接本地調(diào)用的EJB 系統(tǒng)。盡管如此,EJB 的 廣泛普及仍然為其復(fù)雜度所制約。

EJB 規(guī)范起初的一個(gè)主 要價(jià)值- 對(duì)分布式應(yīng)用進(jìn)行事務(wù)管理- 在隨后 的實(shí)踐中被一致認(rèn)為幾乎沒(méi)能派上用場(chǎng)。對(duì)于企業(yè)級(jí)應(yīng)用來(lái)說(shuō),SpringHibernate 等簡(jiǎn)化框架更加實(shí)用。因此,EJB 3.0 規(guī)范(JSR 220) 為了迎 合這個(gè)趨勢(shì)相比于之前進(jìn)行了一次激進(jìn)的大跳躍。受到Spring 影響,EJB 3.0 也使用所謂的“傳統(tǒng)簡(jiǎn)單Java 對(duì)象(POJO )”;同時(shí),支持依賴注入來(lái)簡(jiǎn) 化全異系統(tǒng)的集成與配置。Hibernate 的創(chuàng)始人Gavin King 參與了這一新版規(guī)范的制訂,并對(duì)EJB 大加提倡。Hibernate 的許多特性也被引入到Java 持久化API 當(dāng)中,從而取代原來(lái)的實(shí)體beanEJB 3.0 規(guī)范大幅采用Java 注釋(annotation )來(lái)對(duì)代碼進(jìn)行元數(shù) 據(jù)修飾,從而消減了此前EJB 編程的冗雜性。相應(yīng)地,EJB 3.0 幾乎成為了一個(gè)全新的API , 與此前的數(shù)版可謂毫無(wú)相似度可言。

以下列出了版本的具體變化:

(1)??? EJB1.0

1998324 日發(fā)布。

n?? 定 義了EJBEJB 容器的作用,實(shí)現(xiàn)與互 動(dòng)。

n?? 提 供了最早的開發(fā)者與用戶視圖。

(2)??? EJB1.1

19991217 日發(fā)布。

n?? 開 始采用XML 部署描述符,默認(rèn)的JNDI 上 下文以及可支持IIOPRMI

n?? 安 全機(jī)制由角色(Role )驅(qū)動(dòng),而非方法。

n??? 支 持實(shí)體類,且必須在應(yīng)用中實(shí)現(xiàn)。

(3)??? EJB2.0

2001822 日發(fā)布,JSR 19 定 義。

n?? 制 定了構(gòu)建面向?qū)ο笊虅?wù)應(yīng)用的標(biāo)準(zhǔn)組建結(jié)構(gòu)。

n?? 支 持構(gòu)筑使用不同開發(fā)工具所開發(fā)之組件的聯(lián)合應(yīng)用部署。

n?? 在 多線程,連接池,事務(wù)管理等方面對(duì)用戶透明化。

n?? 使 符合“一次寫成,多次運(yùn)行”的Java 思想。

n?? 關(guān) 注企業(yè)級(jí)應(yīng)用生命期間的開發(fā),部署,運(yùn)行等動(dòng)作。

n?? 定 義了不同開發(fā)工具所需遵守的契約,以便其產(chǎn)品能夠在運(yùn)行期交互。

n?? 支 持與現(xiàn)行系統(tǒng)兼容,開發(fā)者可以擴(kuò)展現(xiàn)有產(chǎn)品以使之支持EJB

n?? 與 其他Java API 兼容。

n?? 支 持EJBJava2 平臺(tái)企業(yè)版或者其他非Java 應(yīng)用程序之間的互操作性。

n?? 支 持與CORBA 兼容的RMI-IIOP

(4)??? EJB2.1

20031124 日發(fā)布,JSR 153 定 義。

n??? Web 服務(wù):可將無(wú)狀態(tài)會(huì)話bean 暴露 為Web 服務(wù);EJB 可通過(guò)引用訪問(wèn)Web 服務(wù)。

n??????? EJB 定時(shí)器服務(wù):提供一種新的基于定時(shí)器的事件驅(qū)動(dòng)方式。可供消息驅(qū)動(dòng)bean 作為消息源使用。

n??????? 增 加了消息目的地。

n??????? 進(jìn) 一步豐富了EJB 查詢語(yǔ)言,支持ORDER BY, AVG, MIN, MAX, SUM, COUNTMOD

n??????? 使 用XML schema 代替DTD 以定義部 署描述符。

(5)??? EJB3 .0

200652 日發(fā)布,JSR 220 定 義。

n?? 全 面采用Java 注釋代替部署描述符。(后者仍可使用,并且具有更高優(yōu)先級(jí))

總結(jié)

以上是生活随笔為你收集整理的EJB3.0历史的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。