成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

EJB常見的12個困惑問與答

開發 后端
本文介紹EJB常見的12個困惑的問題和解答,包括EJB與JAVA BEAN的區別等。

1、EJB2.0有哪些內容?分別用在什么場合? EJB2.0和EJB1.1的區別?

答:規范內容包括Bean提供者,應用程序裝配者,EJB容器,EJB配置工具,EJB服務提供者,系統管理員。這里面,EJB容器是EJB之所以能夠運行的核心。EJB容器管理著EJB的創建,撤消,激活,去活,與數據庫的連接等等重要的核心工作。 JSP,Servlet,EJB,JNDI,JDBC,JMS……

2、EJB與JAVA BEAN的區別?

答:Java Bean 是可復用的組件,對Java Bean并沒有嚴格的規范,理論上講,任何一個Java類都可以是一個Bean.但通常情況下,由于Java Bean是被容器所創建(如Tomcat)的,所以Java Bean應具有一個無參的構造器,另外,通常Java Bean還要實現Serializable接口用于實現Bean的持久性。Java Bean實際上相當于微軟COM模型中的本地進程內COM組件,它是不能被跨進程訪問的。Enterprise Java Bean 相當于DCOM,即分布式組件。它是基于Java的遠程方法調用(RMI)技術的,所以EJB可以被遠程訪問(跨進程、跨計算機)。但EJB必須被布署在諸如Webspere、WebLogic這樣的容器中,EJB客戶從不直接訪問真正的EJB組件,而是通過其容器訪問。EJB容器是EJB組件的代理,EJB組件由容器所創建和管理。客戶通過容器來訪問真正的EJB組件。

3、EJB是基于哪些技術實現的?并說出SessionBean和EntityBean的區別,StatefulBean和StatelessBean的區別。

答:EJB包括Session Bean、Entity Bean、Message Driven Bean,基于JNDI、RMI、JAT等技術實現。

SessionBean在J2EE應用程序中被用來完成一些服務器端的業務操作,例如訪問數據庫、調用其他EJB組件。EntityBean被用來代表應用系統中用到的數據。

對于客戶機,SessionBean是一種非持久性對象,它實現某些在服務器上運行的業務邏輯。

對于客戶機,EntityBean是一種持久性對象,它代表一個存儲在持久性存儲器中的實體的對象視圖,或是一個由現有企業應用程序實現的實體。

Session Bean 還可以再細分為 Stateful Session Bean 與 Stateless Session Bean ,這兩種的 Session Bean都可以將系統邏輯放在method之中執行,不同的是 Stateful Session Bean 可以記錄呼叫者的狀態,因此通常來說,一個使用者會有一個相對應的 Stateful Session Bean 的實體。Stateless Session Bean 雖然也是邏輯組件,但是他卻不負責記錄使用者狀態,也就是說當使用者呼叫 Stateless Session Bean 的時候,EJB Container 并不會找尋特定的 Stateless Session Bean 的實體來執行這個 method.換言之,很可能數個使用者在執行某個Stateless Session Bean 的 methods 時,會是同一個 Bean 的 Instance 在執行。從內存方面來看, Stateful Session Bean 與 Stateless Session Bean 比較, Stateful Session Bean 會消耗 J2EE Server 較多的內存,然而 Stateful Session Bean 的優勢卻在于他可以維持使用者的狀態。

4、EJB與JAVA BEAN的區別?

答:Java Bean 是可復用的組件,對Java Bean并沒有嚴格的規范,理論上講,任何一個Java類都可以是一個Bean.但通常情況下,由于Java Bean是被容器所創建(如Tomcat)的,所以Java Bean應具有一個無參的構造器,另外,通常Java Bean還要實現Serializable接口用于實現Bean的持久性。Java Bean實際上相當于微軟COM模型中的本地進程內COM組件,它是不能被跨進程訪問的。Enterprise Java Bean 相當于DCOM,即分布式組件。它是基于Java的遠程方法調用(RMI)技術的,所以EJB可以被遠程訪問(跨進程、跨計算機)。但EJB必須被布署在諸如Webspere、WebLogic這樣的容器中,EJB客戶從不直接訪問真正的EJB組件,而是通過其容器訪問。EJB容器是EJB組件的代理,EJB組件由容器所創建和管理。客戶通過容器來訪問真正的EJB組件。

EJB包括(SessionBean,EntityBean)說出他們的生命周期,及如何管理事務的?

SessionBean:Stateless Session Bean 的生命周期是由容器決定的,當客戶機發出請求要建立一個Bean的實例時,EJB容器不一定要創建一個新的Bean的實例供客戶機調用,而是隨便找一個現有的實例提供給客戶機。當客戶機第一次調用一個Stateful Session Bean 時,容器必須立即在服務器中創建一個新的Bean實例,并關聯到客戶機上,以后此客戶機調用Stateful Session Bean 的方法時容器會把調用分派到與此客戶機相關聯的Bean實例。

EntityBean:Entity Beans能存活相對較長的時間,并且狀態是持續的。只要數據庫中的數據存在,Entity beans就一直存活。而不是按照應用程序或者服務進程來說的。即使EJB容器崩潰了,Entity beans也是存活的。Entity Beans生命周期能夠被容器或者 Beans自己管理。

EJB通過以下技術管理實務:對象管理組織(OMG)的對象實務服務(OTS),Sun Microsystems的Transaction Service(JTS)、Java Transaction API(JTA),開發組(X/Open)的XA接口。

5、EJB的角色和三個對象

答:一個完整的基于EJB的分布式計算結構由六個角色組成,這六個角色可以由不同的開發商提供,每個角色所作的工作必須遵循Sun公司提供的EJB規范,以保證彼此之間的兼容性。這六個角色分別是EJB組件開發者(Enterprise Bean Provider)、應用組合者(Application Assembler)、部署者(Deployer)、EJB 服務器提供者(EJB Server Provider)、EJB 容器提供者(EJB Container Provider)、系統管理員(System Administrator)

三個對象是Remote(Local)接口、Home(LocalHome)接口,Bean類

6、EJB容器提供的服務

答:主要提供聲明周期管理、代碼產生、持續性管理、安全、事務管理、鎖和并發行管理等服務。

7、EJB規范規定EJB中禁止的操作有哪些?

答:1.不能操作線程和線程API(線程API指非線程對象的方法如notify,wait等),2.不能操作awt,3.不能實現服務器功能,4.不能對靜態屬生存取,5.不能使用IO操作直接存取文件系統,6.不能加載本地庫。,7.不能將this作為變量和返回,8.不能循環調用。

8、remote接口和home接口主要作用

答:remote接口定義了業務方法,用于EJB客戶端調用業務方法。

home接口是EJB工廠用于創建和移除查找EJB實例

9、bean 實例的生命周期

答:對于Stateless Session Bean、Entity Bean、Message Driven Bean一般存在緩沖池管理,而對于Entity Bean和Statefull Session Bean存在Cache管理,通常包含創建實例,設置上下文、創建EJB Object(create)、業務方法調用、remove等過程,對于存在緩沖池管理的Bean,在create之后實例并不從內存清除,而是采用緩沖池調度機制不斷重用實例,而對于存在Cache管理的Bean則通過激活和去激活機制保持Bean的狀態并限制內存中實例數量。

10、EJB的激活機制

答:以Stateful Session Bean 為例:其Cache大小決定了內存中可以同時存在的Bean實例的數量,根據MRU或NRU算法,實例在激活和去激活狀態之間遷移,激活機制是當客戶端調用某個EJB實例業務方法時,如果對應EJB Object發現自己沒有綁定對應的Bean實例則從其去激活Bean存儲中(通過序列化機制存儲實例)回復(激活)此實例。狀態變遷前會調用對應的 ejbActive和ejbPassivate方法。

11、EJB的幾種類型

答:會話(Session)Bean ,實體(Entity)Bean 消息驅動的(Message Driven)Bean
◆會話Bean又可分為有狀態(Stateful)和無狀態(Stateless)兩種
◆實體Bean可分為Bean管理的持續性(BMP)和容器管理的持續性(CMP)兩種

12、客服端調用EJB對象的幾個基本步驟

答:設置JNDI服務工廠以及JNDI服務地址系統屬性,查找Home接口,從Home接口調用Create方法創建Remote接口,通過Remote接口調用其業務方法。

【編輯推薦】

  1. 設計模式在EJB中的應用
  2. POJO與Spring和EJB 3.0的對比
  3. JavaBeans、EJB和POJO詳解
  4. J2EE web service開發(五)把ejb發布為web服務
  5. 快速開發EJB和J2EE Web應用
責任編輯:佚名 來源: 中國IT實驗室
相關推薦

2009-12-03 18:44:56

2019-03-21 15:02:12

NB-IoT物聯網IOT

2009-06-04 16:28:43

EJB常見問題

2019-05-23 11:42:04

Java語法糖編程語言

2024-01-15 10:46:02

2020-05-28 08:58:29

數據分析分析系統數據

2009-06-26 14:10:24

EJB開發

2011-05-16 16:26:14

EJB

2010-10-14 12:40:42

2009-04-07 12:26:24

網絡工程師職場困惑

2021-06-23 08:01:18

TypeScript interface type

2020-05-28 11:34:08

互聯網數據分析數據

2023-02-09 15:33:48

數據質量數據集

2023-02-02 14:28:33

數據質量數據集

2009-07-02 10:14:34

EJB事務屬性

2009-06-11 16:53:09

什么是EJBEJB

2009-06-11 15:26:05

EJB組件EJB容器

2009-06-25 16:35:12

EJB技術

2021-08-02 07:57:03

設計系統客戶端

2009-06-12 12:46:59

EJB3.0
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久草中文网 | 久久久久久影院 | 操视频网站 | 亚洲精品99| 欧美激情视频一区二区三区在线播放 | 91久久综合| 国产成人精品a视频 | 成人欧美一区二区三区在线观看 | 日本色综合 | 在线观看国产视频 | 午夜小电影| 国产亚洲精品久久久久动 | 欧美日韩高清在线一区 | 亚洲精品欧美精品 | 精品亚洲第一 | 二区三区在线观看 | 日韩中文字幕免费在线 | 久久精品69| 自拍偷拍亚洲一区 | 久久国产精品72免费观看 | 免费午夜剧场 | 伊人久久大香线 | av官网在线 | 欧美综合一区二区三区 | 国产污视频在线 | 国产免费观看一级国产 | 污片在线免费观看 | 欧美日韩亚洲成人 | 久久精品男人的天堂 | 美女中文字幕视频 | 国产成人综合一区二区三区 | 日韩中文字幕在线观看 | 亚洲一区有码 | 男女污污动态图 | 在线播放中文字幕 | 欧美a在线看 | 性xxxxx| 国产欧美日韩一区二区三区在线 | 中国人pornoxxx麻豆 | 国产区在线看 | 亚洲视频在线一区 |