精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

EJB 3.1五大模式改進令Java EE 6更好用

原創
開發 后端
EJB 3.1是Java EE 6當中加入的最重要的部分。EJB(Enterprise JavaBeans)是使用Java EE開發和部署業務應用系統的服務端組件架構,使用EJB編寫的應用系統是可擴展的、事務型和安全的。本文對EJB 3.1的五大使用模式的改進進行了詳細介紹。

【51CTO精選譯文】EJB(Enterprise JavaBeans)是使用Java EE開發和部署業務應用系統的服務端組件架構,使用EJB編寫的應用系統是可擴展的、事務型和安全的。EJB 3.0是Java EE 5平臺的一部分,相對前面的版本,它更加易于使用,它的***版本 — JSR318:EJB 3.1 — 隨Java EE 6發布,進一步簡化了使用,并提供了許多反應常見使用模式的改進,如:

1、無接口視圖:允許你指定一個企業Bean,只使用Bean類,不用編寫獨立的業務接口。

2、單元素集合:讓你在一個企業Bean組件的多個實例間輕松地共享狀態,或是在一個應用程序的多個企業Bean組件之間共享狀態。

3、異步會話Bean調用:通過指定一個注解,讓你可以異步調用會話狀態方法。

4、簡化打包:消除了企業Bean類必須打包到ejb-jar文件的限制,現在你可以直接將EJB類放到WAR文件中。

5、輕量級EJB:它是EJB 3.1的子集,包括大量的Java EE profiles。

無接口視圖

#t#EJB 3.0本地客戶端視圖是基于普通舊式Java接口(POJI)調用本地業務接口的,本地接口定義了暴露給客戶端的業務方法,并是在Bean類上實現的,這種獨立的接口有時會帶來不必要的麻煩,并且價值也不大,相同模塊內的來自客戶端的本地訪問細粒度組件尤其如此。

EJB 3.1通過讓本地業務接口成為可選組件簡化了這個方法,沒有本地業務接口的Bean暴露的是無接口視圖,現在你不用編寫獨立的業務接口就可以獲得相同的企業Bean功能。

無接口視圖與EJB 3.0中的本地視圖具有相同的行為,例如,它支持如通過按引用調用語義、事務和安全傳播等特性,但無接口視圖不需要單獨的接口,即Bean類所有的公共方法自動暴露給調用者。默認情況下,任何有空implements子句,且沒有定義任何其它本地或遠程客戶端視圖的會話Bean,暴露的是一個無接口視圖。下面的會話Bean暴露了一個無接口視圖:

  1. @Stateless 
  2.    public class HelloBean {  
  3.  
  4.        public String sayHello() {  
  5.            String message = propertiesBean.getProperty("hello.message");  
  6.            return message;  
  7.        }  
  8.  
  9.    }  
  10.  

使用本地視圖時,無接口視圖的客戶端總是獲得一個EJB引用 — 通過注入或JNDI查找,唯一的不同之處是EJB引用的Java類型是Bean類類型,而不是本地接口的類型,如下面的Bean客戶端:

  1. @EJB 
  2.  private HelloBean helloBean;  
  3.  
  4.  ...  
  5.  
  6.  String msg = helloBean.sayHello();  

注意,雖然這里沒有接口,客戶端不能使用new()明確地實例化Bean類,那是因為所有Bean調用都是通過一個特殊的EJB引用,或由容器提供的代理實現的,這樣就允許容器提供其它的Bean服務,如池、容器管理的事務,并發管理等。

#p#

單元素集合

單元素集合Bean也被稱為單元素集合,它是一種新的會話Bean,它保證在一個特定的Java虛擬機(JVM)應用程序中只被實例化一次。使用單元素集合,你可以在一個企業Bean組件的多個實例之間輕松地共享狀態,也可以在一個應用程序的多個企業Bean之間共享狀態,它就象為某個應用程序緩存數據的類一樣。你可以以單元素集合形式定義類,這樣可以確保在應用程序內只有一個緩存實例,一個共享狀態。

使用@Singleton注解定義單元素集合,如:

  1. @Singleton 
  2.    public class PropertiesBean {  
  3.  
  4.     private Properties props;  
  5.  
  6.     public String getProperty(String name) { ... }  
  7.  
  8.    @PostConstruct 
  9.           public void initialize { // props = ...}  
  10.  
  11.    }  
  12.  

因為它只是另一種會話Bean,單元素集合可以定義相同的本地和遠程客戶端視圖,可以象無狀態的和有狀態的Bean那樣,客戶端以訪問無狀態和有狀態Bean相同的方式訪問單元素集合,即通過EJB引用。例如,下面是一個可以訪問PropertiesBean單元素集合的客戶端示例:

  1. @EJB 
  2.    private PropertiesBean propsBean;  
  3.  
  4.    ...  
  5.  
  6.    String msg = propsBean.getProperty("hello.message");  
  7.  

在這里,容器確保所有通過PropertiesBean引用的調用是由相同的PropertiesBean實例提供的服務,默認情況下,容器強制執行和其它組件類型相同的線程保證,換句話說,單元素集合是全線程安全的,特別值得一提的是,在任一時刻,允許多個調用訪問一個特定的Bean實例,默認情況下,單元素集合會阻塞所有并發調用,但還有其它并發選項允許更高效地訪問單元素集合實例。

#p#

異步會話Bean調用

#t#EJB 3.1引入了一個強大功能,那就是可以異步調用會話Bean方法。對于一個異步調用,允許會話Bean執行它的操作時,客戶端并行處理其它事情。

通過@Asynchronous注解讓一個方法支持異步,也可以使用一個部署描述符將一個方法指定為異步的。

異步方法可以返回一個java.util.concurrent.Future<V>或void對象,Future<V>對象容納了異步操作返回的結果,你可以訪問Future<V>對象檢索一個結果值,檢查異常或取消一個正在處理中的調用。Future<V>接口提供一個get()方法檢索值,當然,你也可以其它合適的類檢索值,如AsyncResult<V>,實際上它自己實現了一個Future<V>接口。

在下面的例子中,performCalculation()方法是異步的,它使用AsyncResult<V>類檢索Future<V>對象返回的值。

  1. @Stateless 
  2.    Public class CalculatorBean implements CalculatorService {  
  3.       ...  
  4.  
  5.       @Asynchronous 
  6.       public Future<Integer> performCalculation(...) {  
  7.  
  8.          // ... do calculation  
  9.  
  10.          Integer result = ...;  
  11.          return new AsyncResult<Integer>(result);  
  12.       }  
  13.    }  
  14.  

#p#

簡化打包

EJB規范始終要求企業Bean打包到一個叫做ejb-jar文件的企業模塊中,因為它一般用于Java EE Web應用程序,這種打包方法顯得有些累贅,應用程序被強制使用一個Web應用程序使用的歸檔文件(.war),一個企業Bean使用的ejb-jar文件,還有一個包含其它包的企業歸檔文件(.ear),如圖1所示,這種打包方法非常復雜,它需要指定模塊之間共享的類和資源。

傳統的企業應用程序打包方法 
圖 1 傳統的企業應用程序打包方法

EJB 3.1解決了這個問題,簡化了打包的復雜程度,徹底消除了企業Bean類必須打包進ejb-jar文件的限制,如圖2所示,現在你可以直接將EJB類放到.war文件中,使用打包Web應用程序類相同的打包規則,這意味著你可以將EJB類放到WEB-INF/classes目錄下,或者放到WEB-INF/lib目錄下的一個.jar文件中。EJB部署描述符也是可選的,如果你需要它,你可以將EJB部署描述符打包到WEB-INF/ejb-jar.xml文件中。

簡化的企業應用程序打包方法 
圖 2 簡化的企業應用程序打包方法

#p#

輕量級EJB(EJB Lite)

對許多應用程序而言,EJB提供了比應用程序真正需要的多得多的功能,使用EJB的應用程序通常只需要使用EJB 3.1的一個子集,輕量級EJB就是為滿足這種需要誕生的。

輕量級EJB簡化了許多開發人員使用EJB,使用輕量級EJB的開發人員在他們的應用程序中需要學習使用一部分功能即可。此外,使用輕量級EJB開發的應用程序可以運行在輕量級EJB或全功能EJB 3.1 API實現的應用程序服務器上。

注意,輕量級EJB不是一個產品,它是EJB 3.1 API的一個子集,輕量級EJB的目標是提供EJB 3.1的一個子集,滿足大多數應用程序業務邏輯層的需要,它也為供應商提供了更好的靈活性,為了滿足這些模板,輕量級EJB提供了以下功能:

1、有狀態,無狀態和單元素集合會話Bean;

2、本地EJB接口或無接口;

3、攔截器;

4、容器管理的和Bean管理的事務;

5、聲明和編程安全;

6、嵌入式API。

更多EJB 3.1新特性

#t#EJB 3.1除前面談到的這些新特性外,還帶來了更多的新特性和改進,例如,它包括一個用于Java SE環境的嵌入式API和容器,這些特性使在Java EE容器外(通常指Java SE環境)測試EJB組件更容易,另外,EJB 3.1引入的單元素集合為EJB應用程序提供了一個方便的方法,在應用程序初始化或關閉期間接受反饋,默認情況下,由容器決定何時實例化單元素集合實例,但你可以通過@Startup注解,強制容器在應用程序初始化期間實例化單元素集合實例,允許Bean定義一個@PostConstruct方法保證在應用程序啟動時調用,此外,@PreDestroy方法可以保證應用程序關閉時調用。

【51CTO.com譯稿,非經授權請勿轉載。合作站點轉載請注明原文譯者和出處為51CTO.com,且不得修改原文內容。】

原文:EJB Technology, Even Easier to Use  作者:Ed Ort

責任編輯:yangsai 來源: 51CTO.com
相關推薦

2010-01-25 17:07:57

萬兆交換機EJB 3.1

2009-07-23 09:42:44

EJB 3.1Java EE 6

2012-09-11 10:31:21

OpenSuse

2019-09-29 09:00:00

PostgreSQLGUI工具數據庫

2011-06-20 14:04:14

Mac OS X

2011-08-15 09:33:16

Ubuntu 11.1

2024-10-21 16:34:15

2009-10-14 11:19:11

桌面虛擬化模式

2010-07-01 15:31:08

Java EE 6EJBWebService

2010-06-12 08:53:17

Visual Stud

2020-06-22 07:00:00

軟件架構架構模式

2019-06-04 10:40:07

2010-07-15 14:37:20

Ubuntu 10.1

2012-05-16 10:51:36

Windows Ser組策略

2011-09-07 09:21:01

設計模式

2025-06-03 01:43:00

2022-08-05 14:46:28

區塊鏈Web 3.0NFT

2013-02-27 10:30:40

2012-06-13 01:37:40

JSPJava

2017-12-25 10:34:18

技術預測機遇
點贊
收藏

51CTO技術棧公眾號

在线成人激情| 国产精品蜜臀| 亚洲午夜精品一区 二区 三区| 亚洲一区二区三区在线| 成人羞羞视频免费| 成人av网站在线播放| 亚洲精品极品少妇16p| 精品国产伦一区二区三区观看方式 | 日本高清www| 俺来也官网欧美久久精品| 久久久久久久综合色一本| 国产免费一区二区三区在线能观看| 受虐m奴xxx在线观看| 在线女人免费视频| 久久网站最新地址| 97在线中文字幕| 日本欧美www| 亚洲国产免费| 色悠悠国产精品| 六十路息与子猛烈交尾| 久久香蕉一区| 国产精品国产三级国产aⅴ中文 | 日韩欧美区一区二| 国产精品igao| 五月天av在线| 亚洲最大成人网4388xx| 亚洲图片都市激情| 一级黄色a毛片| 国产精品永久| 欧美激情在线一区| 小毛片在线观看| rebdb初裸写真在线观看| 国产精品萝li| 成人免费高清完整版在线观看| 精品伦精品一区二区三区视频密桃| 欧美大片网站| 亚洲人成网站精品片在线观看| 亚洲www在线观看| 中文字幕日产av| 久久aⅴ乱码一区二区三区| 欧美激情精品久久久久久久变态| 精品一区二区视频在线观看| 日本三级一区| 亚洲成人av电影在线| 99中文字幕在线观看| 成人动漫在线免费观看| 91免费在线看| 久久资源亚洲| 亚洲aaaaaaa| 不卡一区中文字幕| 国产伦精品一区二区三区视频黑人 | 成人激情视频小说免费下载| 波多野结衣一区二区三区四区| 久久国产中文字幕| 国产一区二区三区在线观看网站| 亚洲综合伊人久久| **国产精品| 3d成人h动漫网站入口| 91视频这里只有精品| 日韩在线激情| 在线成人小视频| 性生活在线视频| 4438全国亚洲精品观看视频| 亚洲成人免费在线视频| 三级视频网站在线观看| 99久久999| 91精品国产高清一区二区三区蜜臀 | 青春草视频在线| 一区二区三区四区在线免费观看 | 欧美性受极品xxxx喷水| 男人添女人荫蒂免费视频| 丝袜在线观看| 亚洲成人久久影院| 欧美大片免费播放| 成全电影大全在线观看| 亚洲欧美另类久久久精品| 国产香蕉一区二区三区| av在线免费一区| 日韩美女视频19| 国产天堂视频在线观看| 成人免费观看在线观看| 亚洲午夜激情av| 色中文字幕在线观看| 在线中文字幕电影| 中文字幕色av一区二区三区| 男人的天堂视频在线| 蜜桃麻豆影像在线观看| 亚洲午夜免费电影| 欧美性大战久久久久xxx| 黄色小说在线播放| 樱桃视频在线观看一区| 18岁网站在线观看| av影院在线| 一本久久a久久免费精品不卡| 国产在线精品91| 久久青草视频| 亚洲国产高清福利视频| 精品一区二区三区蜜桃在线| 欧美xxx在线观看| 欧美亚洲免费电影| 97人妻一区二区精品免费视频| 青青国产91久久久久久| 成人免费在线看片| 北岛玲日韩精品一区二区三区| 国产婷婷色一区二区三区四区| 日本一区二区三区免费看| 蜜桃视频在线观看网站| 亚洲精选视频免费看| 国产二区视频在线播放| 经典三级久久| 国产亚洲激情在线| 日韩精品一区三区| 极品少妇xxxx精品少妇| 欧美人与物videos另类| 调教一区二区| 午夜国产精品一区| 亚洲无在线观看| 美女毛片一区二区三区四区最新中文字幕亚洲 | 国产精品不卡在线| 视频一区二区视频| 亚洲人成午夜免电影费观看| 日韩欧美亚洲一区二区| 日韩欧美视频免费观看| 香蕉久久夜色精品国产| 国产精品久久精品视| 欧美一区二区三区在线观看免费| 亚洲欧美在线视频| 国产三级三级三级看三级| 欧美国产视频| 中文字幕日韩欧美| 欧美三级黄色大片| 秋霞电影网一区二区| 久久久久天天天天| 第一福利在线视频| 欧美xfplay| 亚洲人与黑人屁股眼交| 日本成人在线视频网站| 2014亚洲精品| 国产欧美黑人| 欧美日韩一区二区免费视频| 日本少妇一级片| 欧美有码视频| 91中文精品字幕在线视频| 992tv免费直播在线观看| 在线精品观看国产| 精品亚洲aⅴ无码一区二区三区| 欧美在线网站| 91天堂在线视频| 免费黄色网页在线观看| 欧美日韩亚洲激情| 国产资源中文字幕| 在线精品国产| 成人区精品一区二区| 波多野结衣在线高清| 精品国产三级a在线观看| 青青草手机在线观看| 粉嫩一区二区三区在线看| 日韩欧美99| 亚洲综合av一区二区三区| 亚洲色无码播放| 精品一区二三区| 国产精品免费视频一区| 青青草原成人网| 国产综合久久久| 国产乱人伦真实精品视频| 影音先锋日韩有码| 国产精品入口免费视| 成人免费a视频| 9人人澡人人爽人人精品| 中文字幕中文字幕一区三区| 国产激情欧美| 久久精品国产v日韩v亚洲| 视频一区二区三区四区五区| 久久先锋资源网| 九一精品在线观看| 国产精品久久久久久久久妇女| 欧洲一区二区视频| 91在线不卡| 日韩亚洲欧美成人一区| 国产精品一区二区亚洲| 久国产精品韩国三级视频| 2021国产视频| 西瓜成人精品人成网站| 国产精品爽黄69天堂a| 中文在线字幕免费观看| 日韩av中文字幕在线| 中文字幕永久在线观看| 久久久777精品电影网影网 | 精品国产无码一区二区| 中文字幕国产精品一区二区| 亚洲一区二区三区三州| 免费精品视频| 最新av在线免费观看| 欧美日韩直播| 国产色视频一区| cao在线视频| 色综合亚洲精品激情狠狠| 亚洲av无码乱码国产精品| 一区二区在线观看av| 久久综合在线观看| 香蕉国产精品偷在线观看不卡| 快播日韩欧美| 国产一区二区久久久久| 欧美一级电影在线| 日本欧美电影在线观看| 一本色道久久88亚洲综合88| 青青国产在线视频| 国产精品视频看| 国产精品久久久久久久无码| 精品一区二区三区不卡 | 成人直播大秀| 国产午夜精品在线| 91麻豆精品国产综合久久久 | www久久日com| 日韩一区二区三区四区五区六区| 久久久久亚洲av片无码下载蜜桃| 国产成人av电影在线| 欧美成人福利在线观看| 午夜片欧美伦| 亚洲精品久久区二区三区蜜桃臀| 精品三区视频| 久久视频在线直播| 电影av一区| 国产午夜精品久久久| 国产综合无码一区二区色蜜蜜| 亚洲成av人**亚洲成av**| 亚洲天堂美女视频| 国产精品一二一区| 国产一二三在线视频| 亚洲v天堂v手机在线| 国产高清精品一区| 亚洲男女网站| 国产精品视频区1| 欧美美女日韩| 人体精品一二三区| 精品国产99久久久久久| 亚洲成色777777在线观看影院| 日韩在线视频不卡| 日韩欧美aaa| 国产精品精品软件男同| 欧美激情一区二区三区不卡| 精品人伦一区二区| 国产视频在线观看一区二区三区| 在线能看的av网站| 韩国av一区二区三区| 天堂av在线8| 久久99精品国产.久久久久| 红桃视频 国产| 国产在线精品免费av| 五月六月丁香婷婷| 一区二区日韩免费看| 亚洲精品在线观看免费| 久久亚洲国产| 亚洲自拍偷拍一区二区三区| 午夜精品毛片| 人妻互换免费中文字幕| 一区二区视频欧美| 国产亚洲综合视频| 亚洲精品成人| www.夜夜爱| 99精品免费视频| 女人另类性混交zo| 日本va欧美va欧美va精品| 天天视频天天爽| 国产一区二区女| 少妇极品熟妇人妻无码| 97久久超碰国产精品电影| 久久久亚洲av波多野结衣| 国产日产亚洲精品系列| 国产日产在线观看| 亚洲黄色性网站| 日韩欧美大片在线观看| 色诱视频网站一区| 一区二区国产欧美| 欧美日韩专区在线| 国产裸体永久免费无遮挡| 在线中文字幕一区| 91国产精品一区| 日韩免费在线观看| 欧洲一级在线观看| 日韩在线高清视频| caoprom在线| 欧美肥老妇视频| 亚洲天堂资源| 成人在线激情视频| 欧美五码在线| 亚洲一区二三| 亚洲日本黄色| 天堂av在线网站| 久久久成人网| 一二三级黄色片| 2021中文字幕一区亚洲| 一区二区三区影视| 国产精品久久福利| 国产三级在线观看完整版| 亚洲精品国产品国语在线app| √天堂中文官网8在线| 国产精品电影一区二区| 欧美一区二区三区粗大| 亚洲国产精品欧美一二99| 真实新婚偷拍xxxxx| 欧美日本视频在线| 亚洲区小说区图片区| 亚洲激情成人网| 国精产品一区| 国产精品久久不卡| 日本中文字幕一区二区视频| 四虎成人在线播放| 韩国v欧美v亚洲v日本v| 艳妇乳肉亭妇荡乳av| 国产精品美女久久久久久久| 久久一级免费视频| 精品久久久久久久中文字幕| 99在线观看免费| 亚洲视频一区二区| www555久久| 91青草视频久久| 国产亚洲电影| 国产男女在线观看| 不卡的av电影| 久久精品第一页| 在线不卡的av| www.在线视频.com| 欧美资源在线观看| 国产成人一二| 女人床在线观看| 国产综合色产在线精品| 中文字幕无人区二| 亚洲三级在线免费观看| 懂色av蜜臀av粉嫩av喷吹 | 日韩欧美视频在线免费观看| 欧美一卡2卡3卡4卡| 欧美成人高清在线| 国产精品69av| 少妇精品久久久| 男人添女人下部高潮视频在观看 | 婷婷激情综合五月天| 国产精品热久久久久夜色精品三区| 国产97免费视频| 调教+趴+乳夹+国产+精品| 午夜老司机福利| 欧美美女操人视频| 亚洲精品中文字幕| 久久免费看av| 亚洲欧美激情诱惑| 国产福利在线观看视频| 欧美日韩国产综合视频在线观看中文| 香蕉污视频在线观看| 亚洲午夜久久久影院| 调教一区二区| 国产精品日韩在线| 欧美日韩在线二区| 中文字幕亚洲欧洲| 亚洲天堂久久久久久久| 国产无套丰满白嫩对白| 亚洲人成电影网站色| 秋霞国产精品| 国产精品免费一区二区三区观看| 成人激情开心网| 欧美成人手机在线视频| 亚洲免费观看高清在线观看| 性一交一乱一精一晶| 久久久视频精品| 91亚洲精品在看在线观看高清| 蜜桃999成人看片在线观看| 免费在线欧美黄色| 东方伊人免费在线观看| 制服丝袜中文字幕一区| 美女精品导航| 欧美一区二区三区四区在线观看地址| 黄色成人在线网址| 91人妻一区二区三区| 亚洲午夜久久久久中文字幕久| www.黄色一片| 2023亚洲男人天堂| 99热在线成人| 扒开伸进免费视频| 日本高清不卡视频| 黄网站app在线观看| 国产私拍一区| 久久国产免费看| 黄色激情视频在线观看| 亚洲最新av在线网站| 亚洲精品黑牛一区二区三区| 中文字幕第50页| 精品一区二区三区免费观看| 亚洲一区二区91| 欧美v日韩v国产v| 天堂亚洲精品| 欧美三级华人主播| 国产精品小仙女| 久久久久久久9999| 国产亚洲xxx| 精品中国亚洲| 亚洲高清视频免费| 色综合中文字幕国产| 亚洲精品白浆| 婷婷久久青草热一区二区| 懂色av一区二区三区蜜臀| 精品午夜福利视频|