精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

久久精品久久久久久| 欧美日韩一区二区在线 | 阿v天堂2018| 动漫av一区二区三区| 亚洲专区一区二区三区| 亚洲欧美精品伊人久久| 91小视频网站| 波多野结依一区| 国产欧美1区2区3区| 成人乱色短篇合集| 欧美三级午夜理伦| 久久久人成影片免费观看| 亚洲精品国产精品国产自| mm1313亚洲国产精品无码试看| 免费在线午夜视频| www激情久久| 亚洲伊人久久综合| 中文字幕一区在线播放| 综合久久99| 亚洲欧美国产va在线影院| 激情五月婷婷基地| 成人免费看黄| 一区二区三区丝袜| 五月天丁香综合久久国产 | 狠狠精品干练久久久无码中文字幕| 欧美一级一区二区三区| 久久精品噜噜噜成人av农村| 2025国产精品视频| www.av免费| 欧美一区二区三区高清视频| 亚洲精品456在线播放狼人| 99热一区二区| 久久久一本精品| 午夜精品福利在线| 国产肉体ⅹxxx137大胆| 麻豆av在线导航| 中文字幕精品一区二区三区精品| 国产日本一区二区三区| 国产夫妻性生活视频| 蜜臀久久99精品久久久久久9| 97av在线视频| 精品无码人妻一区二区三区品| 久久久久久影院| 日韩在线视频观看| 夫妇交换中文字幕| 国产欧美一区| 日韩精品久久久久久福利| 亚洲欧美日韩偷拍| 亚洲综合影院| 欧美成人a在线| av地址在线观看| 国产亚洲亚洲国产一二区| 91精品欧美久久久久久动漫| 欧美三级午夜理伦三级富婆| 成人免费福利| 在线亚洲人成电影网站色www| 欧美成人精品欧美一级乱| 亚洲天堂手机| 色婷婷国产精品| 妞干网在线免费视频| 欧美动物xxx| 欧美一a一片一级一片| 黄色国产小视频| 国产黄色一区| 91精品国产91热久久久做人人| 国产欧美精品一二三| 国产日韩一区二区三免费高清| 欧美一区二区三区播放老司机| 两女双腿交缠激烈磨豆腐| 亚洲成人黄色| 亚洲激情视频在线观看| 精品人妻少妇嫩草av无码| 美日韩中文字幕| 色悠悠久久久久| 欧美又粗又大又长| 在线亚洲伦理| 国产精品久久97| 91精品国产色综合久久不8| 国产一区二区三区国产| 国产富婆一区二区三区| 亚洲国产精品18久久久久久| a级精品国产片在线观看| 麻豆av一区二区三区久久| 最新真实国产在线视频| 亚洲欧美二区三区| 久久视频这里有精品| 日韩免费小视频| 91精品国产综合久久香蕉的特点| 国产精品果冻传媒| 影视先锋久久| 久久精品国产久精国产一老狼| 精品无码一区二区三区电影桃花| 玖玖精品视频| 亚洲精品欧美一区二区三区| 少妇高潮久久久| 国产精品嫩草影院com| 男人添女人下部视频免费| 成人教育av| 日韩欧美国产一区二区三区| 美女100%无挡| 欧美日本免费| 日本欧美国产在线| 亚洲国产日韩在线观看| 国产视频在线观看一区二区三区 | 99精品国产高清一区二区| 日日夜夜精品免费| 亚洲欧洲日韩av| 那种视频在线观看| 亚洲福利合集| 色777狠狠综合秋免鲁丝| 圆产精品久久久久久久久久久| 免费成人av在线| 精品国产一区二区三区日日嗨| 亚洲s色大片| 欧美日韩性视频| 日韩精品在线播放视频| 成人网18免费网站| **欧美日韩vr在线| 亚洲国产综合网| 亚洲视频 欧洲视频| 丰满少妇在线观看| 老牛影视av一区二区在线观看 | heyzo高清中文字幕在线| 欧美天天综合网| www.久久国产| 亚洲区一区二| 国产高清精品一区二区三区| 看女生喷水的网站在线观看| 欧美在线观看你懂的| 北岛玲一区二区| 欧美午夜在线| 91久久精品国产91久久性色tv| 成年人在线看| 色呦呦国产精品| 亚洲天堂成人av| 在线成人www免费观看视频| yy111111少妇影院日韩夜片| 日本视频在线免费观看| 好吊成人免视频| 在线观看国产免费视频| 国产欧美在线| 欧美日韩日本网| 成人免费看视频网站| 日韩精品中文字| 97久久久久久久| 26uuu久久综合| 国模无码视频一区二区三区| 欧美成人午夜77777| 久久久久久久电影一区| 嫩草影院一区二区| 午夜久久久久久久久| 亚洲啪av永久无码精品放毛片| 国产精品videosex极品| 国产成人精品一区二区三区福利| 色综合999| 亚洲成色999久久网站| 国产精品19乱码一区二区三区| 高清不卡在线观看| 成人网站免费观看入口| 精品综合久久88少妇激情| 91极品视频在线| 久久久久久青草| 欧美系列一区二区| 日韩一级片大全| 床上的激情91.| 337p粉嫩大胆噜噜噜鲁| 国产日产一区| 国产男人精品视频| 日本大胆在线观看| 亚洲第一视频网| 黄色污污网站在线观看| 国产精品毛片久久久久久| 亚洲一区二区中文字幕在线观看| 在线精品小视频| 国产在线精品一区二区中文| 成人影院网站| 日韩亚洲精品电影| 国产成人三级在线观看视频| 午夜精品福利在线| 老司机福利在线观看| 国产精品69毛片高清亚洲| 国产精品自拍片| 成人高清电影网站| 亚洲在线观看视频| 忘忧草在线影院两性视频| 一区二区在线免费视频| 国产高潮在线观看| 在线影院国内精品| 综合五月激情网| 久久一日本道色综合| 日本免费色视频| 野花国产精品入口| 一区二区三区四区五区视频| 在线一区二区三区视频| 国产精品成熟老女人| 色呦呦久久久| 中文在线资源观看视频网站免费不卡| 99国产精品久久久久久久成人 | 伊人影院中文字幕| 亚洲国产精品自拍| www..com.cn蕾丝视频在线观看免费版| 极品少妇xxxx偷拍精品少妇| 激情伊人五月天| 天天做天天爱天天综合网| 精品视频免费观看| 久久九九精品视频| 国产精品男人的天堂| 国产三线在线| 精品精品国产国产自在线| 人成免费电影一二三区在线观看| 欧美一区二区三区色| 无码人妻黑人中文字幕| 亚洲成人精品一区| 日韩成人毛片视频| 中文一区一区三区高中清不卡| 久久精品女同亚洲女同13| 激情图区综合网| 香蕉视频网站入口| 中文一区在线| www.国产在线视频| 一本到12不卡视频在线dvd| 日韩精品一区二区三区丰满| 人体久久天天| 国产精品一区二区三区在线观| 亚洲日本中文| 国产精品入口日韩视频大尺度| 伊人久久视频| 97精品一区二区三区| 国模雨婷捆绑高清在线| 欧美成人亚洲成人日韩成人| 日本在线视频站| 中文字幕亚洲二区| 成全电影播放在线观看国语| 亚洲天堂第一页| 你懂的在线播放| 日韩av在线播放资源| 少妇荡乳情欲办公室456视频| 精品久久久久av影院| 国产高清视频免费观看| 欧美一区二区三区啪啪| 99这里有精品视频| 欧美一区二区高清| 精品人妻一区二区三区换脸明星| 欧美日韩国产精品成人| 亚洲一区二区人妻| 欧美日韩亚洲国产综合| 伊人亚洲综合网| 欧美日韩国产小视频| 一区二区久久精品66国产精品| 欧美午夜精品电影| 国产精品久久免费| 欧美一级久久久久久久大片| 国产黄色一区二区| 欧美成人a视频| 日韩一卡二卡在线| 亚洲精品98久久久久久中文字幕| 色欲av永久无码精品无码蜜桃| 日韩经典中文字幕| 男人的天堂在线| 中文字幕成人精品久久不卡| 在线免费看黄| 欧美大秀在线观看| 国产蜜臀在线| 2019中文字幕免费视频| av在线日韩| 成人福利在线视频| 综合激情网...| 精品伦精品一区二区三区视频| 婷婷精品视频| 亚洲欧美日本国产有色| 一本一道久久a久久精品蜜桃 | 精品国产欧美一区二区| 天天操天天干天天| 亚洲香蕉成视频在线观看| 日本不卡不卡| 国产69精品久久久久9999| 韩国主播福利视频一区二区三区| 国产精品成人播放| 亚洲福利合集| 欧美视频观看一区| 影音先锋日韩精品| 精品视频一区二区在线| 久久精品久久精品| 亚洲av成人精品一区二区三区| 久久综合九色综合97婷婷女人 | 色诱亚洲精品久久久久久| 中文字幕在线视频免费| 日韩免费观看高清完整版在线观看| 天天干天天插天天操| 最近免费中文字幕视频2019| 青春草在线免费视频| 国产精品27p| 51亚洲精品| 无码免费一区二区三区免费播放| 午夜精品久久99蜜桃的功能介绍| 色欲av无码一区二区人妻| 精品午夜久久福利影院| 黄色录像a级片| 亚洲天堂av一区| 国产又大又粗又爽| 精品欧美一区二区三区精品久久| 裸体xxxx视频在线| 欧美美女18p| 成人精品三级| 国产精品中出一区二区三区| 日韩理论电影院| 国产精品无码av在线播放| 久久精品国产一区二区| 四虎永久免费影院| 亚洲一区二区高清| 国产精品视频一二区| 亚洲欧美国产日韩中文字幕| 丝袜在线视频| 国产一区香蕉久久| 综合国产视频| 欧美成人一区二区在线观看| 国产精品一区在线观看你懂的| 国产又大又粗又爽的毛片| 午夜国产精品影院在线观看| 国产精品毛片一区二区在线看舒淇| 亚洲欧美精品伊人久久| 涩涩涩在线视频| 国产日韩欧美一区二区| 欧美精品91| 超碰在线免费av| 17c精品麻豆一区二区免费| 国产精品51麻豆cm传媒| 亚洲免费av网址| 亚洲精品国产精品国产| 国产一区二区久久久| 午夜久久一区| 中文字幕日韩久久| 国产精品免费免费| 中文字幕一区二区人妻| 在线精品91av| 欧美123区| 亚洲国产精品毛片| 青草国产精品久久久久久| 法国空姐电影在线观看| 色av成人天堂桃色av| 欧洲毛片在线| 日韩美女激情视频| 亚洲a级精品| aa免费在线观看| 久久综合狠狠综合久久综合88| 日产电影一区二区三区| 亚洲精品电影在线观看| 日本在线影院| 欧美区高清在线| 玖玖视频精品| 国产精品麻豆一区| 91麻豆精品国产| 亚洲奶水xxxx哺乳期| 高清av免费一区中文字幕| 在线观看一区| 国产福利在线观看视频| 色乱码一区二区三区88| 国产在线网站| 国产精品一区二区在线| 91成人影院| 第一页在线视频| 精品二区三区线观看| 国内精品一区视频| 国产精品三级美女白浆呻吟| 四季av在线一区二区三区| 久久久九九九热| 无码av中文一区二区三区桃花岛| 少妇高潮一区二区三区69| 国产精品777| 7777久久香蕉成人影院| 色诱av手机版| 一本久久a久久精品亚洲| 欧美三级黄网| 国产精品一区二区欧美黑人喷潮水| 新67194成人永久网站| 亚洲精品电影院| 精品国产一区二区精华| 欧美黑人粗大| 免费日韩在线观看| 91蜜桃视频在线| 一级黄色片网站| 久久久久久久久久久av| 国产一区二区三区探花| 超碰人人草人人| 欧美日韩在线视频首页| aaa在线观看| 国产精品一区在线观看| 麻豆精品视频在线观看免费| 久久久久久天堂| 国产一区二区三区久久精品| 日本一区二区三区播放| 最近免费中文字幕中文高清百度| 亚洲欧美日韩综合aⅴ视频| 午夜福利理论片在线观看| 国产美女精品视频| 国产农村妇女精品一二区| 成人高潮免费视频| 亚洲欧洲黄色网| 在线视频亚洲欧美中文| 毛片毛片毛片毛|