武漢理工16級(jí)《中間件與軟件構(gòu)件》復(fù)習(xí)大綱 重整理

重新排版一下辰企,方便背誦

1.試列舉常用的中間件類型。

答:
1渊抽、遠(yuǎn)程過程調(diào)用 中間件蟆豫,即RPC议忽。
2懒闷、面向?qū)ο?/strong> 中間件,例如:RMI. RMI/IIOP, CORBA, EJB, DCOM等栈幸。
3愤估、面向消息 中間件,例如:Java Message Service, IBM MQSeries, Web Services等速址。
4玩焰、基于事件 中間件。

2.基于RMI/IIOP的分布式應(yīng)用開發(fā)步驟及請(qǐng)注意事項(xiàng)是什么芍锚?

答:(定義 - 實(shí)現(xiàn) - 服務(wù)器 - 客戶端 - 編譯JAVA - 編譯遠(yuǎn)程對(duì)象)
1)用JAVA 定義 遠(yuǎn)程接口
注意昔园,遠(yuǎn)程接口要繼承 java.rmi.Remote, 遠(yuǎn)程方法要拋出 java.rmi.RemoteException蔓榄。
2)實(shí)現(xiàn) 遠(yuǎn)程接口
注意,實(shí)現(xiàn) 遠(yuǎn)程接口的類 必須繼承 可移植遠(yuǎn)程對(duì)象 默刚,即 javax.rmi.PortableRemoteObject甥郑。
3)開發(fā) 服務(wù)器程序
4)開發(fā) 客戶端程序
5)編譯所有JAVA源代碼
6)使用 rmic 編譯 遠(yuǎn)程對(duì)象 實(shí)現(xiàn)的字節(jié)碼文件,產(chǎn)生 客戶端的碼根服務(wù)器端的框架
例如:rmic –iiop RMIIIOPApp.RemoteObjectImpl荤西。
注意澜搅,rmic要使用 –iiop選項(xiàng)

3.什么是無狀態(tài)會(huì)話Bean邪锌?什么是有狀態(tài)會(huì)話Bean?什么是實(shí)體Bean勉躺?它們的區(qū)別是什么?

答:(這個(gè)題的答案有點(diǎn)怪)

Session:一個(gè)用戶連接到服務(wù)器觅丰,從連接起到斷開止饵溅,稱為一個(gè)會(huì)話,英語術(shù)語session妇萄。

無狀態(tài)會(huì)話組件概说,不保存客戶會(huì)話的痕跡,所以一個(gè)駐存在內(nèi)存中的無狀態(tài)會(huì)話組件對(duì)象可以服務(wù)多個(gè)客戶嚣伐。
當(dāng)一個(gè)客戶請(qǐng)求一個(gè)無狀態(tài)會(huì)話組件對(duì)象時(shí)糖赔,如果在組件容器連接池中存在,那么就分配給該用戶轩端,否則放典,就創(chuàng)建一個(gè)新的對(duì)象。

有狀態(tài)會(huì)話組件基茵,記錄會(huì)話期間奋构,一個(gè) 客戶和服務(wù)器端 數(shù)據(jù)交流的痕跡
當(dāng)一個(gè)客戶申請(qǐng)一個(gè)有狀態(tài)會(huì)話組件時(shí)拱层,組件服務(wù)器就為這個(gè)用戶創(chuàng)建一個(gè)唯一的有狀態(tài)會(huì)話組件對(duì)象弥臼,其生命周期即為會(huì)話時(shí)間。

實(shí)體組件根灯,嚴(yán)格地 對(duì)應(yīng) 后臺(tái)數(shù)據(jù)庫中的一個(gè) 表單径缅。
你可以把它視為一個(gè)內(nèi)存數(shù)據(jù)庫表單。一個(gè)存活實(shí)體組件對(duì)象與對(duì)應(yīng)數(shù)據(jù)庫表單數(shù)據(jù)的一致性烙肺,由組件容器維護(hù)纳猪。

4. 試說明以下EJB Java標(biāo)注的意義:@Remote, @Stateless, @Stateful, @Entity, @EJB, @Id, @Column, @PersistenceContext, @Table, @NamedQuery。

答:

  1. @Remote 標(biāo)注 遠(yuǎn)程
  2. @Stateless 標(biāo)注 無狀態(tài)會(huì)話組件
  3. @Stateful 標(biāo)注 有狀態(tài)會(huì)話組件
  4. @Entity 標(biāo)注 實(shí)體組件
  5. @EJB 實(shí)體組件 注入機(jī)制標(biāo)注
  6. @Id 標(biāo)注 實(shí)體組件 所對(duì)應(yīng)的數(shù)據(jù)庫表單的主鍵
  7. @Column 標(biāo)注 實(shí)體組件 某成員變量為對(duì)應(yīng)表單的字段
  8. @PersitenceContext 利用JAVAPersistence機(jī)制導(dǎo)入實(shí)體組件標(biāo)注
  9. @Table 標(biāo)注 實(shí)體組件 對(duì)應(yīng)的表單
  10. @NamedQuerry 標(biāo)注 命名SQL查詢語句

5桃笙、 什么是EJB的注入機(jī)制氏堤?

答:
EJB3.0采用 JAVA標(biāo)注實(shí)體組件對(duì)象注入機(jī)制,大大地簡化了基于J2EE數(shù)據(jù)庫存編程搏明。
所謂注入機(jī)制鼠锈,
即當(dāng)容器在一個(gè) 會(huì)話組件對(duì)象 內(nèi)遇到 導(dǎo)入一個(gè)實(shí)體對(duì)象的標(biāo)注 時(shí)闪檬,即時(shí)創(chuàng)建該 實(shí)體組件的一個(gè) 對(duì)象
舊版本的J2EE,程序員必須顯式地創(chuàng)建一個(gè)實(shí)體組件對(duì)象购笆。

6谬以、試說明CORBA非同步方法的特點(diǎn)

答:
CORBA IDL非同步方法是一個(gè)
非阻塞,無返回由桌,無異常拋出为黎,以及無out和inout形式參數(shù)
的遠(yuǎn)程方法。

7行您、什么是WEB服務(wù)的定義語言铭乾?什么是WEB服務(wù)的網(wǎng)絡(luò)協(xié)議?什么是WEB服務(wù)的命名目錄服務(wù)器娃循?

答:

  • WEB服務(wù)的定義語言是WSDL炕檩,即Web Service Description Language,
    XML大綱的命名空間為http://www.w3.org/TR/wsdl捌斧。
  • WEB服務(wù)的網(wǎng)絡(luò)協(xié)議是SOAP笛质,即Simple Object Access Protocol,
    SOAP命名空間為xmlns:s=http://www.w3.org/2001/06/soap-envelope捞蚂。
  • WEB服務(wù)的命名目錄服務(wù)器是UDDI妇押,即Universal Description, Discovery and Integration。

8姓迅、什么是big Web Service敲霍?

答:
基于SOAP、WSDL丁存、UDDI等 XML技術(shù)的中間件體系結(jié)構(gòu) 所構(gòu)建的 WEB服務(wù) 稱為大WEB服務(wù)肩杈。

9、什么是POA解寝?它的作用是什么扩然?

答:
POA, Portable Object Adapter。
可移植對(duì)象適配器對(duì)象 聋伦。
主要的作用有夫偶,管理 遠(yuǎn)程對(duì)象,遠(yuǎn)程方法參數(shù)的 打包和解包嘉抓。

10索守、什么是J2EE容器晕窑?與EJB容器的關(guān)系是什么抑片?試列舉至少二種J2EE容器。

答:

  • 所謂J2EE容器杨赤,是一種提供對(duì)象通訊敞斋、安全截汪、對(duì)象生命周期、數(shù)據(jù)瞬時(shí)的一致性植捎、軟件構(gòu)件的布署 等服務(wù)的支撐軟件
  • 包括WEB容器和EJB容器
  • J2EE容器又叫J2EE應(yīng)用服務(wù)器衙解,例如JBOSS,GlassFish等都可用作J2EE容器焰枢。

11蚓峦、在基于CORBA的中間件分布式應(yīng)用開發(fā)中,一般先使用IDL定義接口济锄。試說明in, out, inout三種遠(yuǎn)程方法的形式參數(shù)的差別暑椰。

答:
in 的 實(shí)際參數(shù) 從客戶端 傳遞 到服務(wù)器端,
out 的 實(shí)際參數(shù) 在執(zhí)行完 遠(yuǎn)程方法 后能 把數(shù)據(jù)從服務(wù)器端 帶回 客戶端荐绝,
inout 的 實(shí)際參數(shù) 把數(shù)據(jù)從客戶端 帶給 遠(yuǎn)程方法一汽,又能把 遠(yuǎn)程方法執(zhí)行的結(jié)果 帶回客戶端。
使用out形式參數(shù)低滩,IDL接口中定義的操作 完全無需返回計(jì)算結(jié)果召夹。

12、客戶端的碼根和服務(wù)器端的框架作用是什么恕沫?

答:

  • 客戶端的碼根 是遠(yuǎn)程對(duì)象的 本地鏡像监憎,也就是遠(yuǎn)程對(duì)象的 本地代理
    主要負(fù)責(zé) 遠(yuǎn)程方法 參數(shù) 打包 和 遠(yuǎn)程方法 調(diào)用返回結(jié)果 的解包
  • 服務(wù)器端的框架 是服務(wù)器的碼根

13、什么是CORBA婶溯?與RMI/IIOP的差別是什么枫虏?

答:
CORBA, Common Object Request Brocker Achitecture。

  • 通用對(duì)象 請(qǐng)求代理 體系框架爬虱,是一種分布式中間件 規(guī)范隶债。
  • 和RMI/IIOP不同的地方:(定義遠(yuǎn)程接口的方式不同)
    前者使用 IDL通用接口定義語言 定義 遠(yuǎn)程對(duì)象的接口,
    而后者是純粹的 JAVA分布式體系 跑筝,使用 JAVA 定義遠(yuǎn)程接口死讹。

14
  1. module org, jcorba映射成Java什么?
    2.結(jié)構(gòu)體映射成Java什么類型曲梗?
    3.NPerson映射成Java什么類?作用是什么赞警?
    4.接口操作void display(out NPerson persons);被映射成Java什么方法?如何實(shí)現(xiàn)這個(gè)遠(yuǎn)程方法虏两?

答:

  • 1.package org.jcorba;
  • 2.終極類 Person愧旦。
  • 3.共生成兩個(gè)類: NPersonHelperNPersonHolder
    籠統(tǒng)地將定罢,NPersonHelper類用于Corba的類型轉(zhuǎn)換笤虫,
    而NPersonHolder用于生成Corba的網(wǎng)絡(luò)輸入、輸出流。
  • 4.public void display(NPersonHolder persons);
    構(gòu)建一個(gè)Person對(duì)象數(shù)組琼蚯,并賦予形式參數(shù)persons的公共成員變量 value酬凳。

15、如何在一個(gè)CORBA文件中定義一個(gè)一維某特定類型的動(dòng)態(tài)數(shù)組遭庶?CORBA idl可變類型是什么宁仔?類似于VB中的什么類型?

答:

  • 使用關(guān)鍵字 sequence峦睡。
    例如翎苫,typedef sequence<Person> NPerson; NPerson就是Person對(duì)象的一維可變長的動(dòng)態(tài)數(shù)組。
  • CORBA idl可變類型是 any榨了,
  • 類似于VB中的 Variant 類型拉队。

16、下面是一個(gè)Corba IDL文件:

16

答:
sequence<octet>被映射成Java字節(jié)數(shù)組阻逮,
而Data被映射成 DataHelper 和 DataHolder 兩個(gè)類粱快。
DataHolder類 的公共成員變量為一個(gè)變長的 字節(jié)數(shù)組

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末叔扼,一起剝皮案震驚了整個(gè)濱河市事哭,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌瓜富,老刑警劉巖鳍咱,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異与柑,居然都是意外死亡谤辜,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門价捧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來丑念,“玉大人,你說我怎么就攤上這事结蟋「校” “怎么了?”我有些...
    開封第一講書人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵嵌屎,是天一觀的道長推正。 經(jīng)常有香客問我,道長宝惰,這世上最難降的妖魔是什么植榕? 我笑而不...
    開封第一講書人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮尼夺,結(jié)果婚禮上尊残,老公的妹妹穿的比我還像新娘炒瘸。我一直安慰自己,他們只是感情好夜郁,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開白布什燕。 她就那樣靜靜地躺著粘勒,像睡著了一般竞端。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上庙睡,一...
    開封第一講書人閱讀 49,166評(píng)論 1 284
  • 那天事富,我揣著相機(jī)與錄音,去河邊找鬼乘陪。 笑死统台,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的啡邑。 我是一名探鬼主播贱勃,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼谤逼!你這毒婦竟也來了贵扰?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤流部,失蹤者是張志新(化名)和其女友劉穎戚绕,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體枝冀,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡舞丛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了果漾。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片球切。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖绒障,靈堂內(nèi)的尸體忽然破棺而出欧聘,到底是詐尸還是另有隱情,我是刑警寧澤端盆,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布怀骤,位于F島的核電站,受9級(jí)特大地震影響焕妙,放射性物質(zhì)發(fā)生泄漏蒋伦。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一焚鹊、第九天 我趴在偏房一處隱蔽的房頂上張望痕届。 院中可真熱鬧韧献,春花似錦、人聲如沸研叫。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽嚷炉。三九已至渊啰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間申屹,已是汗流浹背绘证。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留哗讥,地道東北人嚷那。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像杆煞,于是被迫代替她去往敵國和親魏宽。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344