- EJB 3.1從入門到精通
- 宋智軍 米偉哲 武桂香編著
- 1144字
- 2018-12-30 07:49:11
第1章 概述
1.1 EJB的發(fā)展歷史
EJB(Enterprise Java Bean, 企業(yè)Bean)是生成業(yè)務(wù)應(yīng)用的主要分布式組件模型,是J2EE體系的核心部分。EJB使業(yè)務(wù)邏輯實(shí)現(xiàn)與系統(tǒng)級(jí)服務(wù)分開,從而使開發(fā)者能夠輕松構(gòu)建企業(yè)級(jí)分布式組件應(yīng)用。從1998年EJB 1.0到現(xiàn)在的最高版本EJB 3.1,EJB得到了很好的普及和發(fā)展。首先讓我們簡(jiǎn)單回顧一下EJB的發(fā)展歷史。
(1)EJB 1.0
1998年3月在San Francisco召開的JavaOne98開發(fā)者大會(huì)上,Sun公司正式發(fā)布了EJB 1.0,這是EJB的第一個(gè)版本。該版本開始支持有狀態(tài)和無狀態(tài)的服務(wù)器對(duì)象(稱為會(huì)話Bean),這也是最早的會(huì)話Bean,并且支持持久化域?qū)ο螅ǚQ為實(shí)體Bean)。為了兼容性和遠(yuǎn)程訪問,EJB 1.0提供了良好的分布式支持功能,它允許通過遠(yuǎn)程接口來遠(yuǎn)程調(diào)用EJB中的業(yè)務(wù)方法。正是由于它提供了一組遠(yuǎn)程訪問的規(guī)范,導(dǎo)致遠(yuǎn)程也需要部署基礎(chǔ)架構(gòu),加大了系統(tǒng)的開銷,影響性能。
(2)EJB 1.1
EJB 1.1的發(fā)布對(duì)1.0版本中的一些特性做了補(bǔ)充說明和改進(jìn),其中主要引入了XML格式的部署文件,使XML配置文件以聲明的方式來對(duì)原數(shù)據(jù)進(jìn)行配置,而不是像1.0版本那樣需要一個(gè)單獨(dú)的class文件來存儲(chǔ)。
(3)EJB 2.0
EJB 2.0通過引入本地接口的概念和措施,解決了以前版本中強(qiáng)制遠(yuǎn)程訪問所帶來的系統(tǒng)開銷和性能下降的問題,它允許開發(fā)者自己決定是否要讓EJB組件支持遠(yuǎn)程訪問,如果EJB組件不需要支持遠(yuǎn)程訪問,則讓Bean實(shí)現(xiàn)類實(shí)現(xiàn)本地接口即可,這就可以避免遠(yuǎn)程訪問所帶來的系統(tǒng)開銷和性能下降。EJB 2.0最大的貢獻(xiàn)就是提出了消息驅(qū)動(dòng)Bean,能夠參與異步消息系統(tǒng),從而解決了EJB應(yīng)用的異步調(diào)用問題。
(4)EJB 2.1
EJB 2.1增加了Web Service的支持,并兼容SOAP協(xié)議,允許會(huì)話Bean暴露站點(diǎn)接口,從而更有利于異構(gòu)系統(tǒng)的整合。不僅如此,EJB 2.1還加入了定時(shí)自動(dòng)執(zhí)行功能,可按照指定的時(shí)間或者時(shí)間間隔調(diào)用EJB的業(yè)務(wù)方法,這種定時(shí)功能非常方便地為系統(tǒng)提供任務(wù)高度的支持。除此之外,EJB 2.1還提供了擴(kuò)展EJB QL的功能,并引入XML schema來替換定義ejb-jar.xml部署描述文件的DTD。
(5)EJB 3.0
EJB 3.0不是以前版本的修訂和改良,而是與舊版本有截然不同的規(guī)范,其中最突出的特點(diǎn)是實(shí)體Bean模型被實(shí)體模型所取代,只保留了原有的Session Bean和消息驅(qū)動(dòng)Bean。EJB 3.0的開發(fā)模式,極大地簡(jiǎn)化了EJB的開發(fā)模式,也優(yōu)化了EJB技術(shù)本身,并降低了EJB的復(fù)雜性。EJB 3.0提供服務(wù)器解決方案的完整套裝,包括持久化、消息、輕量型計(jì)劃、遠(yuǎn)程處理、Web服務(wù)、依賴注入(Dependency Injection,DI)和攔截器。這就是說,我們不必花費(fèi)很多時(shí)間尋找第三方工具并將其集成到應(yīng)用程序中。此外,EJB 3.0提供與其他Java EE技術(shù)以及持久化層技術(shù)的無縫集成,比如,JDBC、Java事務(wù)API(Java Transaction API,JTA)、Java消息服務(wù)(Java Messaging Service,JMS)、Java驗(yàn)證和授權(quán)服務(wù)(Java Authentication and Authorization Service,JAAS)、JavaServer Pages(JSP)、servlet、JavaServer Faces(JSF)和Swing,等等。
(6)EJB 3.1
EJB 3.1的主要目標(biāo)是使EJB盡可能簡(jiǎn)單,其核心思想就是要簡(jiǎn)化EJB架構(gòu),同時(shí)引入一些急需的新特性,目前已經(jīng)作為JavaEE 6規(guī)范的一部分被發(fā)布,去掉了EJB 3.0繁瑣的編程模型,而帶給Java EE 6一個(gè)更簡(jiǎn)單的編程環(huán)境。
- 光網(wǎng)絡(luò)評(píng)估及案例分析
- 重新定義Spring Cloud實(shí)戰(zhàn)
- 網(wǎng)絡(luò)的琴弦:玩轉(zhuǎn)IP看監(jiān)控
- NB-IoT物聯(lián)網(wǎng)技術(shù)解析與案例詳解
- 企業(yè)網(wǎng)絡(luò)安全管理
- 物聯(lián)網(wǎng)之霧:基于霧計(jì)算的智能硬件快速反應(yīng)與安全控制
- CCNP TSHOOT(642-832)認(rèn)證考試指南
- 面向5G-Advanced的關(guān)鍵技術(shù)
- Working with Legacy Systems
- Learning Windows 8 Game Development
- Learning Storm
- 高級(jí)網(wǎng)絡(luò)技術(shù)
- 云計(jì)算技術(shù)與標(biāo)準(zhǔn)化
- 園區(qū)網(wǎng)絡(luò)架構(gòu)與技術(shù)
- Dart Cookbook