溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java中Bean與的區(qū)別是什么

發(fā)布時間:2021-07-01 16:05:33 來源:億速云 閱讀:240 作者:Leah 欄目:編程語言

本篇文章為大家展示了Java中Bean與的區(qū)別是什么,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

JavaBean 是一種組件,它在內(nèi)部有接口或有與其相關(guān)的屬性,以便不同人在不同時間開發(fā)的 bean 可以詢問和集成??梢詷?gòu)建一個 bean,而在以后構(gòu)造時將其與其它 bean 綁定。這種過程提供了先構(gòu)建,然后重復(fù)使用的方法,這就是組件的概念??梢詫⑦@種單一應(yīng)用程序部署成獨立程序、ActiveX 組件或在瀏覽器中。

JavaBean 因其外部接口(即屬性接口)而與純對象不同。這種接口允許工具讀取組件要執(zhí)行的功能,將其與其它 bean 掛鉤,以及將其插入其它環(huán)境。JavaBean 設(shè)計成對單一進(jìn)程而言是本地的,它們在運行時通常可視。這種可視組件可能是按鈕、列表框、圖形或圖表,但這不是必需的。

可執(zhí)行組件

Server Bean 或 EJB 是部署在服務(wù)器上的可執(zhí)行組件或商業(yè)對象。有一個協(xié)議允許對其進(jìn)行遠(yuǎn)程訪問或在特定服務(wù)器上安裝或部署它們。有一系列機(jī)制允許它們將服務(wù)安全性、事務(wù)行為、并發(fā)性(由多個客戶機(jī)同時訪問的能力)和持久性(其狀態(tài)可以保存多久)的主要方面授權(quán)給 EJB 服務(wù)器上其所在的容器。當(dāng)安裝在容器中時,它們獲得各自的行為,該行為提供不同質(zhì)量的服務(wù),因此,選擇正確的 EJB 服務(wù)器至關(guān)重要。這正是 IBM WebSphere 企業(yè)版的優(yōu)勢所在。

EJB 是設(shè)計成運行在服務(wù)器上,并由客戶機(jī)調(diào)用的非可視遠(yuǎn)程對象??赏ㄟ^多個非可視 JavaBean 構(gòu)建 EJB。它們有一個部署描述符,其目的與 JavaBean 屬性相同:它是以后可由工具讀取的 bean 的描述。EJB 還獨立于平臺,一旦編寫好,還可以在任何支持 Java 的平臺(包括客戶機(jī)和服務(wù)器)上使用。

因為 EJB 由諸如 IBM VisualAge for Java 這樣的工具集生成,所以,它是基于服務(wù)器的對象,并用于遠(yuǎn)程調(diào)用。它們安裝在 EJB 服務(wù)器上,并象調(diào)用其它 CORBA 遠(yuǎn)程對象那樣獲得進(jìn)行調(diào)用的遠(yuǎn)程接口。

ActiveX 對象 可以將 JavaBean 部署成 ActiveX 對象,雖然 EJB 的代理也可以這樣做,但是,因為 ActiveX 運行在桌面上,所以,EJB 本身不能成為 ActiveX 對象。要在與平臺相關(guān)的、僅 Windows 平臺上做到這一點,開發(fā)人員可以將 JavaBean 變換成 ActiveX 組件。

EJB 的主要優(yōu)點在于:構(gòu)建 bean 時,bean 開發(fā)人員可以規(guī)定需要什么類型的行為,而不必規(guī)定如何去做。開發(fā)分為兩部分:程序員開發(fā) bean,然后驗證:它可與構(gòu)建工具一起工作,并包括標(biāo)識所需服務(wù)質(zhì)量行為種類的部署描述符。下一步,另一個程序員可以采用這個 bean,并使用讀取 EJB 部署描述符的部署工具,然后將該 bean 安裝到 Enterprise Java Server 上的容器中。

在第二步中,部署工具采取一些操作,這可能意味著生成如狀態(tài)保存代碼,放入事務(wù)掛鉤,或執(zhí)行安全性檢查這樣的代碼。所有這些操作由部署工具生成,bean 開發(fā)人員和部署人員可以是不同的人。

可以通過使用部署工具,將任何獨立于平臺的 JavaBean 改寫成具有可靠服務(wù)質(zhì)量、特定于平臺的 EJB,以滿足現(xiàn)有商業(yè)系統(tǒng)和應(yīng)用程序的特定需求。這就是 EJB 服務(wù)器對集成系統(tǒng)、網(wǎng)絡(luò)和體系結(jié)構(gòu)如此重要的原因所在。

EJB 與 IBM WebSphere 企業(yè)版

在 IBM WebSphere 企業(yè)版中使用時,可以將 EJB 配置成被管理的商業(yè)對象。接受它們授權(quán)服務(wù)的容器是其安裝到的容器。將 EJB 的持久性部分映射在數(shù)據(jù)或狀態(tài)對象中。

EJB 服務(wù)器為 EJB 提供不同的服務(wù)質(zhì)量,選擇正確的 EJB 服務(wù)器可能對滿足完整的商業(yè)需求至關(guān)重要?!敖M件代理”功能極其健壯,該功能提供如負(fù)載均衡和支持服務(wù)器組中多臺機(jī)器的高級功能。它還有大大超出 Enterprise Java Server (EJS) 規(guī)范所倡導(dǎo)的系統(tǒng)管理功能。因此,按照基本標(biāo)準(zhǔn)編寫的 JavaBean 或 EJB 可以運行在使用“組件代理”功能的 WebSphere 企業(yè)版上,并獲得那些所有的附加功能。

EJB 服務(wù)器還提供獨特的特性和服務(wù)質(zhì)量,而且不完全相同。IBM“組件代理”有一些強(qiáng)大特性。例如,可伸縮性,它允許開發(fā)人員將 EJB 部署到從小型系統(tǒng)到大型網(wǎng)絡(luò)的不同類型服務(wù)器。開發(fā)人員可以從小處入手,例如,在一個部門中,首先在 LAN 的 Java 服務(wù)器上部署,一旦準(zhǔn)備好,就知道可以將在那里創(chuàng)建的 JavaBean 和 EJB 部署到全球網(wǎng)絡(luò)。

然后,開發(fā)人員可以測試并熟悉這些 bean,試運行,制作樣本等等。滿意之后,開發(fā)人員可以通過將其移至高性能服務(wù)器,來大幅度擴(kuò)大其規(guī)模。JavaBean 和 EJB 不受任何計算機(jī)體系結(jié)構(gòu)邊界的限制。它們用 Java 編寫,可以運行在任何具有 Java 虛擬機(jī)的系統(tǒng)上,并可以使用任何 Enterprise Java Server (EJS) 來部署對象。因此,開發(fā)人員現(xiàn)在可以在方便的系統(tǒng)上構(gòu)建,以后在方便的系統(tǒng)上部署,而不必是同一臺或同樣類型的機(jī)器。


IBM WebSphere 企業(yè)版支持將商業(yè)對象部署到多臺服務(wù)器。EJB 作為商業(yè)對象集成到“組件代理”功能,并作為任何其它商業(yè)對象處理。因此,EJB 可以連接到所選的后端系統(tǒng),并執(zhí)行任何所需操作,以滿足其商業(yè)需求。這就成為“組件代理”為 EJB 提供的基礎(chǔ)設(shè)施。通過將“組件代理”用作 EJB 服務(wù)器,開發(fā)人員將能夠繼續(xù)使用當(dāng)前舊有系統(tǒng),并將其與電子商務(wù)接口一起提供。

為使 EJB 能在 WebSphere“組件代理”環(huán)境中工作,可以使用“組件代理”部署工具將其安裝在一臺或多臺服務(wù)器上,然后將其添加到命名服務(wù)器,以便可以全局查找到它。任何可以訪問公共命名服務(wù)器的人都可以找到它,找到其宿主,并可以在宿主上執(zhí)行方法,同時創(chuàng)建 EJB。這就是“代理組件”要做的事。

讓我們舉一個在 Web 購物站點上可以看到的電子購物車的例子。用戶的購物車是一個 JavaBean。用戶將貨架上的商品放入購物車,這些商品本身是 JavaBean。它們?nèi)靠梢?,并且面向用戶?/p>

結(jié)帳時,將用戶購物車中的商品發(fā)送到服務(wù)器上的 EJB,該 EJB 執(zhí)行一些必要的操作,如檢查信用卡授權(quán)和可用額度,生成封條,或生成給發(fā)貨部門的有關(guān)提什么貨和發(fā)貨地點的特殊指示――這就是商業(yè)程序已在進(jìn)行的活動。

Bean 的全部意義不只是其現(xiàn)有能力,更在于其可以為商業(yè)提供的有競爭力的潛在能力。IT 設(shè)計師和應(yīng)用開發(fā)人員現(xiàn)在可以將精力完全集中在商業(yè)邏輯,而將如事務(wù)、持久性和安全性的底層工作留給服務(wù)器。WebSphere 的“組件代理”功能將提供所有這些(還有后端訪問)和對象事務(wù)管理器。

上述內(nèi)容就是Java中Bean與的區(qū)別是什么,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI