2、EJB3在容器之外使用實(shí)體Bean——> 新的容器外持久化特性。
3、EJB3由JSR220定義:第一個(gè)文檔:綜合介紹新版本的高級特性,著重介紹用于構(gòu)建EJB組件的新的簡化模型;后兩個(gè)文檔:分布講解核心企業(yè)Bean框架和持久化模型的技術(shù)細(xì)節(jié)。
(1) EJB3簡化API(EJB3 Simplified API)高度概括新EJB3開發(fā)模型;
(2) EJB3核心約定和要求(EJB3 Core Contracts and Requirement)重點(diǎn)講解會(huì)話Bean和消息驅(qū)動(dòng)Bean;
(3) Java持久化API(Java Persistence API)講解實(shí)體和持久化框架。
4、EJB3包括會(huì)話Bean和消息驅(qū)動(dòng)Bean,實(shí)體Bean由持久化提供器管理(已經(jīng)不再是EJB容器管理)。
5、EJB框架:EJB組件操作的支持環(huán)境,包括容器事務(wù)、安全事務(wù)、資源的池管理和緩存、組件生命周期服務(wù)和并發(fā)支持等。
6、EJB核心特性:
(1) 聲明式元數(shù)據(jù):使用注釋或XML文件聲明式地指定企業(yè)Bean和實(shí)體的行為;
(2) 只有在需要非默認(rèn)行為時(shí),才顯示的指定注釋或XML——>Configuration by Exception(按異常配置);
(3) 可伸縮性:EJB服務(wù)器使用資源池達(dá)到對象重用的最大化,使用持久化緩存避免重復(fù)查詢或創(chuàng)建相同的對象;
(4) Java事務(wù)API(JTA):分布式事務(wù)定義標(biāo)準(zhǔn)API,并且EJB服務(wù)器作為EJB的JTA事務(wù)管理器;
(5) 多層安全
(6) 可移植性:EJB可移植到實(shí)現(xiàn)EJB的任何AS上;
(7) 可重用性:可重用或打包到多個(gè)應(yīng)用程序中;
(8) 持久性:實(shí)體Bean——> 在EJB中替換為POJO. 7、XML和注釋,同時(shí)使用時(shí)XML配置文件優(yōu)先。
8、依賴注入:在JavaEE容器內(nèi)實(shí)例化一個(gè)EJB之后,且在把安全交付給客戶之前,容器可以按照此企業(yè)Bean定義的原則初始化實(shí)例的屬性數(shù)據(jù)。
9、攔截器:回調(diào)方法。企業(yè)Bean或?qū)嶓wBean在遇到特定的生命周期事件時(shí),指定調(diào)用它們自己的或其它特定類的方法。
10、POJO實(shí)現(xiàn):默認(rèn)的構(gòu)造器替換了早期EJB要求的ejbCreate()方法。實(shí)體Bean的Home接口比替換為EntityManager接口,它是單一實(shí)例工廠,管理實(shí)體生命周期的操作。
11、分布式計(jì)算模型12、EJB角色
(1) 企業(yè)Bean提供者
(2) 應(yīng)用程序裝配值
(3) 部署者