<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Binge's Blog

    網(wǎng)絡(luò)文摘集(Java篇)
    posts - 4, comments - 0, trackbacks - 0, articles - 3
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    關(guān)于EJB與WebLogic

    Posted on 2006-11-29 12:28 batistuta 閱讀(939) 評(píng)論(0)  編輯  收藏 所屬分類: 隨便抄抄
    EJB 與 JAVA BEAN 的區(qū)別?
    答: Java Bean 是可復(fù)用的組件,對(duì) Java Bean 并沒有嚴(yán)格的規(guī)范,理論上講,任何一個(gè) Java 類都可以是一個(gè) Bean 。但通常情況下,由于 Java Bean 是被容器所創(chuàng)建(如 Tomcat) 的,所以 Java Bean 應(yīng)具有一個(gè)無參的構(gòu)造器,另外,通常 Java Bean 還要實(shí)現(xiàn) Serializable 接口用于實(shí)現(xiàn) Bean 的持久性。 Java Bean 是不能被跨進(jìn)程訪問的。 Enterprise Java Bean 是分布式組件。它是基于 Java 的遠(yuǎn)程方法調(diào)用( RMI )技術(shù)的,所以 EJB 可以被遠(yuǎn)程訪問(跨進(jìn)程、跨計(jì)算機(jī))。但 EJB 必須被布署在諸如 Webspere 、 WebLogic 這樣的容器中, EJB 客戶從不直接訪問真正的 EJB 組件,而是通過其容器訪問。 EJB 容器是 EJB 組件的代理, EJB 組件由容器所創(chuàng)建和管理。客戶通過容器來訪問真正的 EJB 組件。

    EJB 是基于哪些技術(shù)實(shí)現(xiàn)的?并說出 SessionBean 和 EntityBean 的區(qū)別, StatefulBean 和 StatelessBean 的區(qū)別。
    答: EJB 包括 Session?Bean 、 Entity?Bean 、 Message?Driven?Bean ,基于 JNDI 、 RMI 、 JAT 等技術(shù)實(shí)現(xiàn)。
    從功能上講:
    SessionBean 被用來完成一些服務(wù)器端的業(yè)務(wù)操作,例如訪問數(shù)據(jù)庫(kù)、調(diào)用其他 EJB 組件。
    EntityBean 被用來代表應(yīng)用系統(tǒng)中用到的數(shù)據(jù)。
    對(duì)于客戶機(jī), SessionBean 是一種非持久性對(duì)象,它實(shí)現(xiàn)某些在服務(wù)器上運(yùn)行的業(yè)務(wù)邏輯。
    Session?Bean? 還可以再細(xì)分為 ?Stateful?Session?Bean? 與 ?Stateless?Session?Bean? ,這兩種的 ?Session?Bean 都可以將系統(tǒng)邏輯放在 ?method 之中執(zhí)行,不同的是 Stateful?Session?Bean? 可以記錄呼叫者的狀態(tài),因此通常來說,一個(gè)使用者會(huì)有一個(gè)相對(duì)應(yīng)的 ?Stateful?Session?Bean? 的實(shí)體。 Stateless?Session?Bean? 雖然也是邏輯組件,但是他卻不負(fù)責(zé)記錄使用者狀態(tài),也就是說當(dāng)使用者呼叫 ?Stateless?Session?Bean? 的時(shí)候, EJB?Container? 并不會(huì)找尋特定的 ?Stateless?Session?Bean? 的實(shí)體來執(zhí)行這個(gè) ?method 。換言之,很可能數(shù)個(gè)使用者在執(zhí)行某個(gè) ?Stateless?Session?Bean? 的 ?methods? 時(shí),會(huì)是同一個(gè) ?Bean? 的 ?Instance? 在執(zhí)行。從內(nèi)存方面來看, ?Stateful?Session?Bean? 與 ?Stateless?Session?Bean? 比較, ?Stateful?Session?Bean? 會(huì)消耗 ?J2EE?Server? 較多的內(nèi)存,然而 ?Stateful?Session?Bean? 的優(yōu)勢(shì)卻在于他可以維持使用者的狀態(tài)。
    對(duì)于客戶機(jī), EntityBean 是一種持久性對(duì)象,可分為 Bean 管理的持續(xù)性( BMP )和容器管理的持續(xù)性( CMP )兩種 。它代表一個(gè)存儲(chǔ)在持久性存儲(chǔ)器中的實(shí)體的對(duì)象視圖,或是一個(gè)由現(xiàn)有企業(yè)應(yīng)用程序?qū)崿F(xiàn)的實(shí)體。

    從生命周期上分:
    SessionBean : Stateless?Session?Bean? 的生命周期是由容器決定的,當(dāng)客戶機(jī)發(fā)出請(qǐng)求要建立一個(gè) Bean 的實(shí)例時(shí), EJB 容器不一定要?jiǎng)?chuàng)建一個(gè)新的 Bean 的實(shí)例供客戶機(jī)調(diào)用,而是隨便找一個(gè)現(xiàn)有的實(shí)例提供給客戶機(jī)。當(dāng)客戶機(jī)第一次調(diào)用一個(gè) Stateful?Session?Bean? 時(shí),容器必須立即在服務(wù)器中創(chuàng)建一個(gè)新的 Bean 實(shí)例,并關(guān)聯(lián)到客戶機(jī)上,以后此客戶機(jī)調(diào)用 Stateful?Session?Bean? 的方法時(shí)容器會(huì)把調(diào)用分派到與此客戶機(jī)相關(guān)聯(lián)的 Bean 實(shí)例。
    EntityBean : Entity?Beans 能存活相對(duì)較長(zhǎng)的時(shí)間,并且狀態(tài)是持續(xù)的。只要數(shù)據(jù)庫(kù)中的數(shù)據(jù)存在, Entity?beans 就一直存活。而不是按照應(yīng)用程序或者服務(wù)進(jìn)程來說的。即使 EJB 容器崩潰了, Entity?beans 也是存活的。 Entity?Beans 生命周期能夠被容器或者 ?Beans 自己管理。
    EJB 通過以下技術(shù)管理實(shí)務(wù):對(duì)象管理組織( OMG )的對(duì)象實(shí)務(wù)服務(wù)( OTS ), Sun?Microsystems 的 Transaction?Service ( JTS )、 Java?Transaction?API ( JTA ),開發(fā)組( X/Open )的 XA 接口。

    EJB 的角色和三個(gè)對(duì)象 以及remote 接口和 home 接口主要作用
    答: 一個(gè)完整的基于 EJB 的分布式計(jì)算結(jié)構(gòu)由六個(gè)角色組成,這六個(gè)角色可以由不同的開發(fā)商提供,每個(gè)角色所作的工作必須遵循 Sun 公司提供的 EJB 規(guī)范,以保證彼此之間的兼容性。這六個(gè)角色分別是 EJB 組件開發(fā)者( Enterprise?Bean?Provider ) ? 、應(yīng)用組合者( Application?Assembler )、部署者( Deployer )、 EJB? 服務(wù)器提供者( EJB?Server?Provider )、 EJB? 容器提供者( EJB?Container?Provider )、系統(tǒng)管理員( System?Administrator )
    三個(gè)對(duì)象是 Remote ( Local )接口、 Home ( LocalHome )接口, Bean 類
    remote 接口定義了業(yè)務(wù)方法,用于 EJB 客戶端調(diào)用業(yè)務(wù)方法。
    home 接口是 EJB 工廠用于創(chuàng)建和移除查找 EJB 實(shí)例

    EJB 容器提供的服務(wù)
    答: 主要提供聲明周期管理、代碼產(chǎn)生、持續(xù)性管理、安全、事務(wù)管理、鎖和并發(fā)行管理等服務(wù)。

    EJB 規(guī)范規(guī)定 EJB 中禁止的操作有哪些? ?
    ? 答: 1. 不能操作線程和線程 API( 線程 API 指非線程對(duì)象的方法如 notify,wait 等 ) , 2. 不能操作 awt , 3. 不能實(shí)現(xiàn)服務(wù)器功能, 4. 不能對(duì)靜態(tài)屬生存取, 5. 不能使用 IO 操作直接存取文件系統(tǒng), 6. 不能加載本地庫(kù) . , 7. 不能將 this 作為變量和返回, 8. 不能循環(huán)調(diào)用。

    bean? 實(shí)例的生命周期
    答: 對(duì)于 Stateless?Session?Bean 、 Entity?Bean 、 Message?Driven?Bean 一般存在緩沖池管理,而對(duì)于 Entity?Bean 和 Statefull?Session?Bean 存在 Cache 管理,通常包含創(chuàng)建實(shí)例,設(shè)置上下文、創(chuàng)建 EJB?Object ( create )、業(yè)務(wù)方法調(diào)用、 remove 等過程,對(duì)于存在緩沖池管理的 Bean ,在 create 之后實(shí)例并不從內(nèi)存清除,而是采用緩沖池調(diào)度機(jī)制不斷重用實(shí)例,而對(duì)于存在 Cache 管理的 Bean 則通過激活和去激活機(jī)制保持 Bean 的狀態(tài)并限制內(nèi)存中實(shí)例數(shù)量。

    EJB 的激活機(jī)制
    答: 以 Stateful?Session?Bean? 為例:其 Cache 大小決定了內(nèi)存中可以同時(shí)存在的 Bean 實(shí)例的數(shù)量,根據(jù) MRU 或 NRU 算法,實(shí)例在激活和去激活狀態(tài)之間遷移,激活機(jī)制是當(dāng)客戶端調(diào)用某個(gè) EJB 實(shí)例業(yè)務(wù)方法時(shí),如果對(duì)應(yīng) EJB?Object 發(fā)現(xiàn)自己沒有綁定對(duì)應(yīng)的 Bean 實(shí)例則從其去激活 Bean 存儲(chǔ)中(通過序列化機(jī)制存儲(chǔ)實(shí)例)回復(fù)(激活)此實(shí)例。狀態(tài)變遷前會(huì)調(diào)用對(duì)應(yīng)的 ejbActive 和 ejbPassivate 方法。

    客服端調(diào)用 EJB 對(duì)象的幾個(gè)基本步驟
    答: 設(shè)置 JNDI 服務(wù)工廠以及 JNDI 服務(wù)地址系統(tǒng)屬性,查找 Home 接口,從 Home 接口調(diào)用 Create 方法創(chuàng)建 Remote 接口,通過 Remote 接口調(diào)用其業(yè)務(wù)方法。

    應(yīng)用服務(wù)器

    應(yīng)用服務(wù)器有那些?
    答: BEA?WebLogic?Server , IBM?WebSphere?Application?Server , Oracle9i?Application?Server , jBoss , Tomcat

    如何給 weblogic 指定大小的內(nèi)存 ??
    答: 在啟動(dòng) Weblogic 的腳本中(位于所在 Domain 對(duì)應(yīng)服務(wù)器目錄下的 startServerName ),增加 set?MEM_ARGS=-Xms32m?-Xmx200m ,可以調(diào)整最小內(nèi)存為 32M ,最大 200M。

    EJB 需直接實(shí)現(xiàn)它的業(yè)務(wù)接口或 Home 接口嗎,請(qǐng)簡(jiǎn)述理由。
    答:遠(yuǎn)程接口和 Home 接口不需要直接實(shí)現(xiàn),他們的實(shí)現(xiàn)代碼是由服務(wù)器產(chǎn)生的,程序運(yùn)行中對(duì)應(yīng)實(shí)現(xiàn)類會(huì)作為對(duì)應(yīng)接口類型的實(shí)例被使用。

    如何設(shè)定的 weblogic 的熱啟動(dòng)模式 ( 開發(fā)模式 ) 與產(chǎn)品發(fā)布模式 ?
    答: 可以在管理控制臺(tái)中修改對(duì)應(yīng)服務(wù)器的啟動(dòng)模式為開發(fā)或產(chǎn)品模式之一。或者修改服務(wù)的啟動(dòng)文件或者 commenv 文件,增加 set?PRODUCTION_MODE=true 。

    如何啟動(dòng)時(shí)不需輸入用戶名與密碼 ?
    答: 修改服務(wù)啟動(dòng)文件,增加 ?WLS_USER 和 WLS_PW 項(xiàng)。也可以在 boot.properties 文件中增加加密過的用戶名和密碼 .

    weblogic 管理制臺(tái)中對(duì)一個(gè)應(yīng)用域 ( 或者說是一個(gè)網(wǎng)站 ,Domain) 進(jìn)行 jms 及 ejb 或連接池等相關(guān)信息進(jìn)行配置后 , 實(shí)際保存在什么文件中 ?
    答: 保存在此 Domain 的 config.xml 文件中,它是服務(wù)器的核心配置文件。

    說說 weblogic 中一個(gè) Domain 的缺省目錄結(jié)構(gòu) ? 比如要將一個(gè)簡(jiǎn)單的 helloWorld.jsp 放入何目錄下 , 然的在瀏覽器上就可打入 http:// 主機(jī) : 端口號(hào) //helloword.jsp 就可以看到運(yùn)行結(jié)果了 ? ? 又比如這其中用到了一個(gè)自己寫的 javaBean 該如何辦 ?
    答: Domain 目錄服務(wù)器目錄 applications ,將應(yīng)用目錄放在此目錄下將可以作為應(yīng)用訪問,如果是 Web 應(yīng)用,應(yīng)用目錄需要滿足 Web 應(yīng)用目錄要求, jsp 文件可以直接放在應(yīng)用目錄中, Javabean 需要放在應(yīng)用目錄的 WEB-INF 目錄的 classes 目錄中,設(shè)置服務(wù)器的缺省應(yīng)用將可以實(shí)現(xiàn)在瀏覽器上無需輸入應(yīng)用名。

    在 weblogic 中發(fā)布 ejb 需涉及到哪些配置文件
    答: 不同類型的 EJB 涉及的配置文件不同,都涉及到的配置文件包括 ejb-jar.xml,weblogic-ejb-jar.xmlCMP 實(shí)體 Bean 一般還需要 weblogic-cmp-rdbms-jar.xml?
    86 、如何在 weblogic 中進(jìn)行 ssl 配置與客戶端的認(rèn)證配置或說說 j2ee( 標(biāo)準(zhǔn) ) 進(jìn)行 ssl 的配置
    缺省安裝中使用 DemoIdentity.jks 和 DemoTrust.jks??KeyStore 實(shí)現(xiàn) SSL ,需要配置服務(wù)器使用 Enable?SSL ,配置其端口,在產(chǎn)品模式下需要從 CA 獲取私有密鑰和數(shù)字證書,創(chuàng)建 identity 和 trust?keystore ,裝載獲得的密鑰和數(shù)字證書。可以配置此 SSL 連接是單向還是雙向的。

    如何查看在 weblogic 中已經(jīng)發(fā)布的 EJB?
    答: 可以使用管理控制臺(tái),在它的 Deployment 中可以查看所有已發(fā)布的 EJB
    說說在 weblogic 中開發(fā)消息 Bean 時(shí)的 persistent 與 non-persisten 的差別
    persistent 方式的 MDB 可以保證消息傳遞的可靠性 , 也就是如果 EJB 容器出現(xiàn)問題而 JMS 服務(wù)器依然會(huì)將消息在此 MDB 可用的時(shí)候發(fā)送過來,而 non - persistent 方式的消息將被丟棄。


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 99精品全国免费观看视频..| 国产AV日韩A∨亚洲AV电影| 成人精品视频99在线观看免费| 亚洲国产成人a精品不卡在线| 特级毛片A级毛片免费播放| 亚洲第一区精品日韩在线播放| 免费无码一区二区| 中文字幕亚洲无线码| 在线人成免费视频69国产| 亚洲AV日韩AV高潮无码专区| 久久99热精品免费观看牛牛| 亚洲视频一区网站| 久久久久国色AV免费看图片| 亚洲国产成人久久一区二区三区| 免费人成激情视频| 成人一区二区免费视频| 亚洲精品免费视频| 日本精品人妻无码免费大全| 色综合久久精品亚洲国产| 亚洲AV无码一区二区三区在线观看| 一本一道dvd在线观看免费视频| 亚洲一区二区三区影院| 亚在线观看免费视频入口| 亚洲伊人久久大香线蕉啊| 日韩a级毛片免费观看| 一个人看的www免费在线视频| 亚洲国产成人私人影院| 国产成人免费网站| 免费看一级一级人妻片| 亚洲久本草在线中文字幕| 国产精品免费观看久久| 国产精品偷伦视频免费观看了| 亚洲视频一区在线| 免费欧洲毛片A级视频无风险| 最新国产乱人伦偷精品免费网站| 亚洲AV无码一区二区三区人| 亚洲日本一区二区一本一道| 曰批全过程免费视频播放网站| 美女无遮挡免费视频网站| 亚洲天天在线日亚洲洲精| 日韩免费视频观看|