锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品久久久久久亚洲影视 ,337p日本欧洲亚洲大胆艺术,亚洲人成无码网站http://m.tkk7.com/kingpub/category/15153.html嫻峰唴瀛樼煡宸憋紝鍗氬鑻ユ瘮閭?/description>zh-cnThu, 01 Mar 2007 02:33:07 GMTThu, 01 Mar 2007 02:33:07 GMT60鐢⊿pring JMS浣垮紓姝ユ秷鎭彉寰楃畝鍗?/title><link>http://m.tkk7.com/kingpub/articles/69410.html</link><dc:creator>xiaofeng</dc:creator><author>xiaofeng</author><pubDate>Wed, 13 Sep 2006 09:06:00 GMT</pubDate><guid>http://m.tkk7.com/kingpub/articles/69410.html</guid><wfw:comment>http://m.tkk7.com/kingpub/comments/69410.html</wfw:comment><comments>http://m.tkk7.com/kingpub/articles/69410.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/kingpub/comments/commentRss/69410.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/kingpub/services/trackbacks/69410.html</trackback:ping><description><![CDATA[ <p>浣滆?Srini;<a target="_blank">David_w_johnson</a><br />鍘熸枃:<a target="_blank">http://www.onjava.com/pub/a/onjava/2006/02/22/asynchronous-messaging-with-spring-jms.html</a>聽</p> <p>寮傛澶勭悊閫氫俊鏄潰鍚戞湇鍔℃灦鏋勶紙SOA錛夌殑閲嶈閮ㄥ垎錛屽洜涓轟紒涓氫腑鐨勮澶氱郴緇熼氫俊錛屽挨鍏舵槸璺熷閮ㄧ郴緇熼氫俊鏈潵灝辨槸寮傛鐨勩侸ava娑堟伅鏈嶅姟錛圝MS錛夊氨鏄敤鏉ョ紪鍐欏紓姝ユ秷鎭疛2EE搴旂敤鐨凙PI銆備嬌鐢↗MS API鐨勪紶緇熸秷鎭疄鐜版秹鍙婂埌璞¤繖鏍風殑涓浜涙楠わ細鏌ユ壘瀵瑰垪榪炴帴宸ュ巶銆侀槦鍒楄祫婧愪互鍙婂湪瀹為檯鍙戦佸拰鎺ュ彈娑堟伅鍓嶏紝鍒涘緩JMS浼氳瘽錛圝MS session錛夈?br /><br />Spring framework綆鍖栦簡鐢↗EE緇勪歡錛堝寘鎷琂MS錛夊紑鍙慗MS搴旂敤鐨勫伐浣溿傚畠鎻愪緵浜嗕竴涓ā鏉挎満鍒舵潵闅愯棌鍏稿瀷鐨凧MS瀹炵幇緇嗚妭錛屾墍浠ュ紑鍙戣呭彲浠ヤ笓娉ㄤ簬娑堟伅澶勭悊浠誨姟鑰屼笉鐢ㄦ媴蹇冩庢牱鍒涘緩銆佽闂拰閲婃斁JMS璧勬簮銆?br /><br />鏈枃鐢ㄤ竴涓繍琛屽湪JBoss MQ server涓婄殑綆鍗昗eb搴旂敤姒傝堪浜哠pring JMS API鍜屾庢牱浣跨敤瀹冨紓姝ュ鐞嗭紙鍙戦佸拰鎺ュ彈錛夋秷鎭傛垜灝嗗姣擩MS瀹炵幇鐨勪紶緇熸柟娉曞拰Spring JMS瀹炵幇鏂規硶錛屼互鏄劇ず浣跨敤Spring JMS鏉ュ鐞嗘秷鎭槸澶氫箞鐨勭畝鍗曞拰鐏墊椿銆?/p> <p> <strong> <span style="FONT-SIZE: 16px">寮傛娑堟伅鍜孲OA</span> <br /> <br /> </strong>鐜板疄涓栫晫涓紝澶у鏁癢eb璇鋒眰鏄悓姝ュ鐞嗙殑銆備緥濡傦紝褰撶敤鎴風櫥闄嗕竴涓珯鐐癸紝浠栨垨濂硅緭鍏ョ敤鎴峰悕鍜屽彛浠や互鍙婃湇鍔″櫒璇嗗埆鐧婚檰鍑瘉銆傚鏋滆韓浠介獙璇佹垚鍔燂紝紼嬪簭璁╃敤鎴瘋繘鍏ョ珯鐐廣傝繖閲岋紝鐧婚檰璇鋒眰浠庡鎴風琚帴鍙楀悗錛岀珛鍗寵澶勭悊銆備俊鐢ㄥ崱鎺堟潈涔熸槸涓涓悓姝ュ鐞嗙殑渚嬪瓙錛涗粎褰撴湇鍔″櫒鏍稿疄浜嗗彂閫佽繘鏉ョ殑淇$敤鍗″彿鏄湁鏁堝茍涓旇瀹㈡埛鐨勫笎鍙鋒湁瓚沖鐨勪俊鐢ㄩ搴﹀悗錛屾墠鍏佽瀹㈡埛緇х畫榪涜涓嬩竴姝ュ姩浣溿傝鎴戜滑鏉ヨ冨療涓涓嬭鍗曞鐞嗙郴緇熶腑鐨勬敮浠樼粨綆楁楠ゃ備竴鏃︾郴緇熸牳瀹炰簡閭d釜鐢ㄦ埛鐨勪俊鐢ㄥ崱淇℃伅鏄紜殑錛岃屼笖甯愭埛涓婃湁瓚沖鐨勮祫閲戯紝閭d箞涓嶉渶瑕佺瓑鍒版敮浠樼粏鑺傚拰杞笎鏈緇堝畬鎴愩傛敮浠樼粨綆楃敤寮傛鏂瑰紡澶勭悊錛屽姝ゅ鎴蜂究鍙互緇х畫榪涜緇撳笎澶勭悊銆?br /><br />涓庡吀鍨嬬殑鍚屾璇鋒眰鐩告瘮錛屽紓姝ュ鐞嗙敤浜庨渶瑕侀暱鏃墮棿鏉ュ鐞嗙殑璇鋒眰銆傚紓姝ュ鐞嗙殑鍙﹀涓涓緥瀛愭槸浣忔埧璐鋒澶勭悊搴旂敤涓紝澶勭悊鎻愪氦鍒癆US錛圓utomated Underwriting System錛夌殑璐鋒璇鋒眰銆傝捶嬈句漢鎻愪氦璐鋒鐢寵鍚庯紝鎶墊娂鍏徃鍙戦佽姹傚埌AUS鍙栧緱淇$敤鍘嗗彶淇℃伅銆傚洜涓鴻璇鋒眰瑕佸彇寰楃患鍚堣緇嗙殑淇$敤鎶ュ憡濡傝捶嬈句漢褰撳墠鍜岃繃鍘葷殑淇$敤甯愭埛錛屾渶榪戠殑鏀粯浠ュ強鍏跺畠閲戣瀺璇︾粏淇℃伅錛屾墍浠ヤ粠璇鋒眰鍒拌幏寰楀搷搴斿父甯擱渶瑕佸緢闀挎椂闂淬傚瀹㈡埛绔▼搴忔潵璇村紑涓涓埌鏈嶅姟鍣ㄧ殑榪炴帴騫朵笖闀挎椂闂寸瓑寰呭搷搴旀槸娌℃湁鎰忎箟鐨勩備簬鏄氨鏈変簡寮傛閫氫俊錛涗篃灝辨槸錛屼竴鏃﹁姹傝鎻愪氦錛屽畠灝辮鏀懼叆闃熷垪閲岄潰騫朵笖瀹㈡埛鏂紑鏈嶅姟鍣ㄨ繛鎺ャ傜劧鍚庯紝AUS鏈嶅姟浠庣壒瀹氶槦鍒楁憳鍙栬姹傦紝澶勭悊瀹冿紝鎶婄粨鏋滄秷鎭斁鍏ュ彟澶栦竴涓秷鎭槦鍒椼傛渶鍚庡鎴風▼搴忎粠娑堟伅闃熷垪鎽樺彇鍝嶅簲緇撴灉緇х畫澶勭悊淇$敤鍘嗗彶緇撴灉淇℃伅銆?br /><br /><strong><span style="FONT-SIZE: 16px">JMS</span></strong><br /><br />濡傛灉鐢ㄨ繃JMS鐨勮瘽錛屼細鍙戠幇瀹冪被浼煎啓JDBC鎴朖CA浠g爜銆傚畠鏈夊垱寤烘垨媯绱MS璧勬簮鐨勬牱鏉夸唬鐮侊紝姣忓綋浣犻渶瑕佺紪鍐欎竴涓柊綾繪潵鍙戦佹垨鎺ュ彈娑堟伅鏃訛紝閮藉緱閲嶅緙栧啓閭d釜鏍鋒湰浠g爜銆備笅闈㈠垪鍑轟簡浼犵粺JMS瀹炵幇娑夊強鐨勬楠わ細<br />1銆佸垱寤篔NDI鍒濆涓婁笅鏂嘽ontext錛?br />2銆佷粠JNDI涓婁笅鏂囪幏寰楅槦鍒楄繛鎺ュ伐鍘傦紱<br />3銆佷粠闃熷垪榪炴帴宸ュ巶鍙栧緱闃熷垪Queue錛?br />4銆佸垱寤轟竴涓猄ession瀵硅薄錛?br />5銆佸垱寤轟竴涓彂閫佹垨鎺ュ彈瀵硅薄錛?br />6銆佸埄鐢ㄧ5閮ㄥ垱寤虹殑鍙戦佹垨鎺ュ彈瀵硅薄鍙戦佹垨鎺ュ彈娑堟伅錛?br />7銆佸鐞嗗畬娑堟伅鍚庯紝鍏抽棴鎵鏈塉MS璧勬簮銆?br /><br />濡備綘鎵瑙侊紝鍙湁絎?姝ユ槸澶勭悊娑堟伅鐨勬楠ゃ傚叾浠栨楠ら兘鍙槸綆$悊JMS璧勬簮錛屼笌瀹為檯涓氬姟闇姹傛棤鍏籌紝浣嗗紑鍙戣呬笉寰椾笉緙栧啓鍜岀淮鎶ら偅浜涢檮鍔犳楠や唬鐮併?br /><br /><strong><span style="FONT-SIZE: 16px">Spring JMS</span></strong><br /><br />Spring妗嗘灦鎻愪緵涓涓ā鏉挎満鍒舵潵闅愯棌Java API緇嗚妭銆侸EE寮鍙戣呭彲鐢↗DBCTemplate 鍜孞NDITemplate綾繪潵鍒嗗埆璁塊棶鍚庣鏁版嵁搴撳拰JEE璧勬簮錛堟暟鎹簮錛岃繛鎺ユ睜錛夈侸MS娌℃湁寮傚父銆係pring鎻愪緵浜咼MSTemplate綾伙紝鎵浠ュ紑鍙戣呬笉蹇呬負JMS瀹炵幇緙栧啓鏍鋒湰浠g爜銆傚綋寮鍙慗MS搴旂敤鏃訛紝Spring鎻愪緵浜嗕竴涓嬩竴浜涗紭鍔匡細<br />1銆佹彁渚涗簡涓涓狫MS鐨勬娊璞PI錛岀畝鍖栦簡JMS鐨勪嬌鐢ㄣ傚錛氳闂洰鐨勫湴錛堥槦鍒楁垨涓諱綋錛夊拰鍑虹増娑堟伅鍒扮壒瀹氱洰鐨勫湴銆?br />2銆丣EE寮鍙戣呬笉蹇呭叧蹇僇MS涓嶅悓鐗堟湰涔嬮棿鐨勫樊寮傦紙濡侸MS 1.0.2 鍚?JMS 1.1錛夛紱<br />3銆佸紑鍙戣呬笉蹇呯壒瀹氬湴澶勭悊JMS寮傚父錛屽洜涓篠pring涓篔MS浠g爜鎶涘嚭鐨勪換浣旿MS寮傚父鎻愪緵浜嗕竴涓猽nchecked寮傚父銆?br /><br />涓鏃︿綘鍦↗MS搴旂敤涓紑濮嬩嬌鐢⊿pring錛屼綘灝嗕細嬈h祻鍒板紓姝ユ秷鎭鐞嗙殑綆鏄撴с係pring JMS妗嗘灦鎻愪緵浜嗗悇縐峧ava綾諱嬌JMS寮鍙戝彉寰楃畝鍗曘?br /><br /><img style="DISPLAY: inline" onclick="javascript:imgClick(this);" height="726" alt="image" src="http://www.matrix.org.cn/resource/upload/forum/2006_09_05_201903_OrVFFFTSyu.jpg" width="607" onload="javascript:imgLoad(this);" border="0" resized="1" /><br />琛?錛孲pring JMS綾?br /><br />闅忓悗鐨勯儴鍒嗭紝鎴戝皢璇︾粏瑙i噴琛?涓殑綾伙紙濡侸msTemplate, DestinationResolver,鍜?MessageConverter錛夈?br /><br /><br /><strong><span style="FONT-SIZE: 16px">JMSTemplate</span></strong><br /><br />JmsTemplate鎻愪緵浜嗗嚑涓猦elper鏂規硶鏉ユ墽琛屽熀鏈搷浣溿傚紑濮嬩嬌鐢↗msTemplate鍓嶏紝鏈夊繀瑕佺煡閬揓MS鎻愪緵鑰呮敮鎸佸摢縐岼MS瑙勮寖銆侸Boss AS 4.0.2 鍜?WebLogic 8.1鏈嶅姟鍣ㄦ敮鎸丣MS1.0.2瑙勮寖銆俉ebLogic 鏈嶅姟鍣?9.0鍖呭惈JMS1.1鏀寔銆侸MS1.1緇熶竴浜哖TP鍜孭ub/Sub緙栫▼鎺ュ彛銆傛湁浜嗚繖涓敼鍙橈紝寮鍙戣呭彲浠ュ垱寤轟竴涓簨鍔′細璇濓紝鐒跺悗鍦ㄥ悓涓涓狫MS浜嬪姟涓紝浠嶲ueue錛圥TP錛夋帴鍙楁秷鎭拰鍙戦佷竴涓秷鎭埌Topic錛圥ub/Sub錛夈侸MS1.1鍚戝悗鍏煎JMS1.0錛屽洜姝ゅ熀浜嶫MS1.0緙栧啓鐨勪唬鐮佷粛鐒惰兘璺烰MS1.1宸ヤ綔銆?br /><br />JmsTemplate鎻愪緵鍚勭鏂規硶鏉ユ帴鏀跺拰鍙戦佹秷鎭傝〃2鏄柟娉曞垪琛ㄣ?br /><br /><img style="DISPLAY: inline" onclick="javascript:imgClick(this);" alt="image" src="http://www.matrix.org.cn/resource/upload/forum/2006_09_05_202057_elyVKDAPjp.jpg" width="600" onload="javascript:imgLoad(this);" border="0" resized="1" /><br />琛?銆侸MS妯℃澘鏂規硶<br /><br />浣跨敤JNDI涓婁笅鏂囧瓨鍌ㄥ拰媯绱㈢洰鐨勫湴銆傚綋閰嶇疆Spring搴旂敤涓婁笅鏂囨椂錛屾垜浠敤JndiObjectFactoryBean鑾峰緱JMS鐩殑鍦板紩鐢ㄣ侱estinationResolver鐢ㄦ潵瑙f瀽鐩殑鍦板悕縐板埌涓涓狫MS鐩殑鍦幫紝褰撳簲鐢ㄦ湁璁稿鐩殑鍦版椂錛岄偅鏄緢鏈夊府鍔╃殑銆侱ynamicDestinationResolver錛堢己鐪丏estinationResolver瀹炵幇錛夌敤浜庤В鏋愬姩鎬佺洰鐨勫湴銆?br /><br />MessageConverter鎺ュ彛瀹氫箟浜唈ava瀵硅薄鍜孞MS娑堟伅涔嬮棿杞崲鐨勫綰︺備嬌鐢ㄨ漿鎹㈠櫒錛屽簲鐢ㄤ唬鐮佸彲浠ヤ笓娉ㄤ簬涓氬姟瀵硅薄錛屼笉鐢ㄦ搷蹇冨畠鏄浣曚唬琛↗MS娑堟伅鐨勩係impleMessageConverter錛堝拰SimpleMessageConverter102錛夋槸緙虹渷MessageConverter瀹炵幇銆傚畠浠敤浜庡皢String銆佸瓧鑺傛暟緇勶紙(byte[]錛夈丮ap銆丼erializable瀵硅薄鍒嗗埆杞崲鎴怞MS TextMessage銆丣MS BytesMessage錛孞MS MapMessage錛孞MS ObjectMessage銆備綘鍙互緙栧啓MessageConverter鎺ュ彛鐨勫畾鍒跺疄鐜板茍緇撳悎XML緇戝畾妗嗘灦濡侸AXB, Castor, Commons Digester, XMLBeans, 鎴?XStream鏉ヨ漿鎹ML鏂囨。鍒癟extMessage銆?br /><br /><strong><span style="FONT-SIZE: 16px">鏍鋒湰搴旂敤</span></strong><br /><br />鎴戝皢鐢ㄤ竴涓牱鏈捶嬈懼簲鐢ㄥ鐞嗙郴緇燂紙鍙獿oanProc錛夋潵璇存槑鎬庢牱鍦↗MS搴旂敤涓嬌鐢⊿pring銆備綔涓鴻捶嬈懼鐞嗙殑涓閮ㄥ垎錛孡oanProc鍙戦佽捶嬈捐緇嗚祫鏂欙紙loan ID, borrower name, borrower's SSN, loan expiration date, and loan amount錛変粠AUS緋葷粺璇鋒眰淇¤捶鍘嗗彶銆備負璁╀緥瀛愮畝鍗曚竴鐐癸紝鎴戜滑灝嗗熀浜庝袱涓弬鏁幫細淇$敤璇勫垎鍜岃捶嬈炬暟閲忔潵鑾峰緱淇¤捶鍘嗗彶璇︾粏璧勬枡銆傝鎴戜滑鍋囧畾澶勭悊淇$敤媯鏌ヨ姹傜殑涓氬姟瑙勫垯濡備笅錛?br />1銆佸鏋滆捶嬈炬暟閲忕瓑浜庢垨灝忎簬$500,000錛岄偅涔堣捶嬈句漢蹇呴』鑷沖皯鏈変竴涓済ood鈥濅俊鐢紙渚嬪錛岃捶嬈句漢鐨勪俊鐢ㄨ瘎鍒嗗湪680鍒?99涔嬮棿錛夛紱<br />2銆佸鏋滆捶嬈炬暟閲忚秴榪?500,000錛岄偅涔堣捶嬈句漢蹇呴』鑷沖皯瑕佹湁涓涓渧ery good鈥濅俊鐢紝榪欐剰鍛充粬/濂圭殑淇$敤璇勫垎瓚呰繃700銆?br /><br /><strong><span style="FONT-SIZE: 16px">璐鋒搴旂敤Use Case</span></strong><br /><br />璐鋒璇鋒眰澶勭悊Use Case鐢變笅鍒楁楠ょ粍鎴愶細<br />1銆佺敤鎴峰湪璐鋒鐢寵web欏甸潰杈撳叆璐鋒璇︾粏璧勬枡騫舵彁浜よ捶嬈劇敵璇鳳紱<br />2銆佺劧鍚庣▼搴忓彂閫佽捶嬈捐緇嗚祫鏂欏埌AUS緋葷粺鍙栧緱淇$敤鍘嗗彶璇︾粏璧勬枡銆傜敤鍙戦佽姹傚埌鍚嶅彨CreditRequestSendQueue鐨勬秷鎭槦鍒楁潵瀹屾垚銆?br />3銆丄US緋葷粺浠庨槦鍒楁憳鍙栬捶嬈捐緇嗚祫鏂欏茍鐢ㄨ捶嬈懼弬鏁版潵浠庢暟鎹簱媯绱俊鐢ㄥ巻鍙蹭俊鎭紱<br />4銆佺劧鍚嶢US緋葷粺鐢ㄦ壘鍒扮殑璐鋒浜轟俊鐢ㄥ巻鍙蹭俊鎭垱寤轟竴涓柊鐨勬秷鎭茍鍙戦佸埌鍚嶅彨CreditRequestReceiveQueue鐨勬秷鎭槦鍒楋紱<br />5銆佹渶鍚嶭oanProc浠庢帴鏀舵秷鎭槦鍒楁憳鍙栧搷搴旀秷鎭茍澶勭悊璐鋒鐢寵錛屽喅瀹氱敵璇鋒槸琚牳鍑嗚繕鏄嫆緇濄?br /><br />搴旂敤涓紝鍦ㄥ悓鏍風殑JBoss MQ server涓厤緗簡涓や釜娑堟伅闃熷垪銆俇se Case鐢ㄥ簭鍒楀浘1琛ㄧず濡備笅錛?br /><br /><img style="DISPLAY: inline" onclick="javascript:imgClick(this);" alt="image" src="http://www.matrix.org.cn/resource/upload/forum/2006_09_05_202057_elyVKDAPjp.jpg" width="600" onload="javascript:imgLoad(this);" border="0" resized="1" /><br />鍥?錛氳捶嬈懼鐞嗗簲鐢ㄧ殑搴忓垪鍥?br /><br /><strong><span style="FONT-SIZE: 16px">鎶鏈?/span></strong><br /><br />琛?鍒楀嚭浜嗕緥瀛愬簲鐢ㄤ腑鐢ㄥ埌鐨勪竴浜涙妧鏈拰寮婧愭鏋?br /><br /><img style="DISPLAY: inline" onclick="javascript:imgClick(this);" alt="image" src="http://www.matrix.org.cn/resource/upload/forum/2006_09_05_202413_gBIKWmjTZt.jpg" onload="javascript:imgLoad(this);" border="0" resized="0" /><br />琛?錛孞MS搴旂敤涓敤鍒扮殑妗嗘灦<br /><br /><strong><span style="FONT-SIZE: 16px">浣跨敤Hermes 鐨凧MS璧勬簮璁劇疆</span></strong><br /><br />涓哄紓姝ュ鐞嗘秷鎭紝棣栧厛錛屾垜浠渶瑕佹秷鎭槦鍒楁潵鍙戦佸拰鎺ユ敹娑堟伅銆傛垜浠湪JBoss涓嬌鐢▁ml閰嶇疆鏂囦歡鍒涘緩娑堟伅闃熷垪騫朵笖鐢↗MS鎺у埗鍙版潵嫻忚闃熷垪璇︾粏璧勬枡銆傛竻鍗?鏄劇ず浜哫ML閰嶇疆鏂囦歡JMS閰嶇疆鐗囨柇銆傦紙榪欎釜鐗囨柇鍙互琚坊鍔犲埌%JBOSS_HOME%\server\all\deploy-hasingleton\jms鐩綍涓嬬殑jbossmq-destinations-service.xml鏂囦歡涓傦級<br /><br />娓呭崟1錛孞Boss MQ鏈嶅姟鍣ㄤ腑JMS闃熷垪閰嶇疆<br /><br /></p> <pre class="overflow"><!--聽聽Credit Request Send Queue聽聽--><br /><mbean code="org.jboss.mq.server.jmx.Queue"<br />聽聽name="jboss.mq.destination:service=Queue,name=CreditRequestSendQueue"><br />聽聽<depends optional-attribute-name="DestinationManager"><br />聽聽聽聽jboss.mq:service=DestinationManager<br />聽聽</depends><br /></mbean><br /><br /><!--聽聽Credit Request Receive Queue聽聽--><br /><mbean code="org.jboss.mq.server.jmx.Queue"<br />聽聽name="jboss.mq.destination:service=Queue,name=CreditRequestReceiveQueue"><br />聽聽<depends optional-attribute-name="DestinationManager"><br />聽聽聽聽jboss.mq:service=DestinationManager<br />聽聽</depends><br /></mbean></pre> <p> <br /> <br />鐜板湪錛岃鎴戜滑鐪嬬湅鎬庝箞浣跨敤涓涓彨鍋欻ermes鐨凧MS宸ュ叿嫻忚娑堟伅闃熷垪銆侶ermes鏄竴涓狫ava Swing搴旂敤錛屽畠鑳藉垱寤恒佺鐞嗗拰鐩戞帶JMS鎻愪緵鑰呬腑鐨凧MS destination銆傝繖鏍風殑JMS鎻愪緵鑰呮湁JBossMQ, WebSphereMQ, ActiveMQ 鍜?Arjuna銆備粠website涓嬭澆Hermes騫惰В鍘媧ip鏂囦歡鍒頒竴涓湰鍦扮洰褰?濡俢:\dev\tools\hermes)銆備竴鏃﹀畨瑁咃紝鍙屽嚮hermes.bat (鍦╞in鐩綍)鍚姩紼嬪簭銆?br /><br />涓哄湪Hermes涓厤緗甁BossMQ鏈嶅姟鍣紝鍙傝僅ermes绔欑偣涓婄殑demo銆傚畠涓姝ヤ竴姝ュ艦璞¤鏄庝簡JBoss MQ鐨勯厤緗傚綋閰嶇疆涓涓柊鐨凧NDI鍒濆涓婁笅鏂囨椂錛岃緭鍏ヤ笅闈㈢殑閰嶇疆淇℃伅銆?br /><br />鈥roviderURL = jnp://localhost:1099 <br />鈥nitialContextFactory = org.jnp.interfaces.NamingContextFactory <br />鈥rlPkgPrefixes = org.jnp.interfaces:org.jboss.naming <br />鈥ecurityCredentials = admin <br />鈥ecurityPrincipal = admin <br /><br />褰撳垱寤轟竴涓柊destinations鏃訛紝杈撳叆queue/CreditRequestSendQueue 鍜?queue/CreditRequestReceiveQueue銆傚浘2鏄劇ず浜咼MS鎺у埗鍙頒富灞忓箷錛屽畠鏄劇ず浜嗕負鏍鋒湰JMS搴旂敤鍒涘緩鐨勬柊娑堟伅銆?br /><br /><img style="DISPLAY: inline" onclick="javascript:imgClick(this);" alt="image" src="http://www.matrix.org.cn/resource/upload/forum/2006_09_05_202413_gBIKWmjTZt.jpg" onload="javascript:imgLoad(this);" border="0" resized="0" /><br />鍥?.Hermes涓墍鏈塪estinations鐨勬埅灞?br /><br /><br />鍥?鏄秷鎭彂閫佽呭彂閫佷竴浜涙秷鎭埌CreditRequestSendQueue鍚庯紝Hermes JMS鎺у埗鍙版樉紺虹殑娑堟伅闃熷垪璇︾粏璧勬枡銆備綘鑳界湅鍒拌繖閲岄槦鍒椾腑鏈?涓秷鎭茍涓旀帶鍒跺彴鏄劇ず浜嗘秷鎭殑璇︾粏淇℃伅濡俶essage ID銆乵essage destination銆乼ime stamp銆佸拰瀹為檯鐨勬秷鎭?br /><br /><img style="DISPLAY: inline" onclick="javascript:imgClick(this);" alt="image" src="http://www.matrix.org.cn/resource/upload/forum/2006_09_05_202925_oAwpQRVjgl.jpg" onload="javascript:imgLoad(this);" border="0" resized="0" /><br />鍥?.Hermes涓槦鍒楄緇嗚祫鏂欐埅灞?br /><br /><br /><strong><span style="FONT-SIZE: 16px">浣跨敤Spring JMS錛屽紓姝ユ秷鎭彉寰楃畝鍗?/span></strong><br /><br />鐢ㄥ湪鏍鋒湰搴旂敤涓殑榪欎簺娑堟伅闃熷垪鍚嶅拰鍏跺畠JMS浠ュ強JNDI鍙傛暟濡備笅琛?鎵紺恒?br /><br /><img style="DISPLAY: inline" onclick="javascript:imgClick(this);" alt="image" src="http://www.matrix.org.cn/resource/upload/forum/2006_09_05_203029_PLMHufJeiy.jpg" onload="javascript:imgLoad(this);" border="0" resized="0" /><br />琛?,Spring JMS閰嶇疆鍙傛暟<br /><br /><br /><strong><span style="FONT-SIZE: 16px">Spring閰嶇疆</span></strong><br /><br />宸茬粡鏈変簡榪愯鏍鋒湰搴旂敤鎵闇鐨凧MS destinations錛岀幇鍦ㄨ鏄繘鍏ョ敤XML Spring閰嶇疆鏂囦歡(鍙仛spring-jms.xml)瑁呴厤JMS緇勪歡鐨勭粏鑺傜殑鏃跺欎簡銆傜敤IOC璁捐妯″紡涓殑setter渚濊禆娉ㄥ叆鍘熺悊瑁呭叆榪欎簺緇勪歡銆傝鎴戜滑浠旂粏鐪嬬湅緇勪歡錛屼負姣忎竴涓狫MS緇勪歡鏄劇ず浜嗕竴涓猉ML閰嶇疆鐗囨柇銆?br /><br />JNDI涓婁笅鏂囨槸鑾峰彇JMS璧勬簮鐨勫叆鍙o紝鎵浠ユ垜浠鍏堥厤緗竴涓狫NDI妯℃澘銆傛竻鍗?鏄劇ず浜嗕竴鍚嶄負jndiTemplate鐨凷pring bean錛屽畠鍏鋒湁鍙栧緱JNDI鍒濆涓婁笅鏂囧繀欏葷殑甯哥敤鍙傛暟銆?br /><br />娓呭崟2錛孞NDI涓婁笅鏂囨ā鏉?br /></p> <pre class="overflow"><bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"><br />聽聽聽聽<property name="environment"><br />聽聽聽聽聽聽聽聽<props><br />聽聽聽聽聽聽聽聽聽聽聽聽<prop key="java.naming.factory.initial"><br />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽org.jnp.interfaces.NamingContextFactory<br />聽聽聽聽聽聽聽聽聽聽聽聽</prop><br />聽聽聽聽聽聽聽聽聽聽聽聽<prop key="java.naming.provider.url"><br />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽localhost<br />聽聽聽聽聽聽聽聽聽聽聽聽</prop><br />聽聽聽聽聽聽聽聽聽聽聽聽<prop key="java.naming.factory.url.pkgs"><br />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽org.jnp.interfaces:org.jboss.naming<br />聽聽聽聽聽聽聽聽聽聽聽聽</prop><br />聽聽聽聽聽聽聽聽</props><br />聽聽聽聽</property><br /></bean></pre> <p> <br /> <br />涓嬩竴姝ワ紝鎴戜滑閰嶇疆闃熷垪榪炴帴宸ュ巶銆傛竻鍗?鏄劇ず浜嗛槦鍒楄繛鎺ュ伐鍘傘?br /><br />娓呭崟3錛孞MS瀵逛簡榪炴帴宸ュ巶閰嶇疆<br /></p> <pre class="overflow"><bean id="jmsQueueConnectionFactory"<br />聽聽聽聽聽聽class="org.springframework.jndi.JndiObjectFactoryBean"><br />聽聽聽聽<property name="jndiTemplate"><br />聽聽聽聽聽聽聽聽<ref bean="jndiTemplate"/><br />聽聽聽聽</property><br />聽聽聽聽<property name="jndiName"><br />聽聽聽聽聽聽聽聽<value>UIL2ConnectionFactory</value><br />聽聽聽聽</property><br /></bean></pre> <p> <br /> <br />鎴戜滑瀹氫箟浜嗕袱涓狫MS destinations鏉ュ彂閫佸拰鎺ユ敹娑堟伅銆傛竻鍗?鍜屾竻鍗?鏄劇ず浜嗚繖浜涚粏鑺傘?br /><br />娓呭崟4錛屽彂閫侀槦鍒楅厤緗?br /></p> <pre class="overflow"><bean id="sendDestination"<br />聽聽聽聽class="org.springframework.jndi.JndiObjectFactoryBean"><br />聽聽聽聽<property name="jndiTemplate"><br />聽聽聽聽聽聽聽聽<ref bean="jndiTemplate"/><br />聽聽聽聽</property><br />聽聽聽聽<property name="jndiName"><br />聽聽聽聽聽聽聽聽<value>queue/CreditRequestSendQueue</value><br />聽聽聽聽</property><br /></bean></pre> <p> <br /> <br />娓呭崟5錛屾帴鏀墮槦鍒楅厤緗?br /></p> <pre class="overflow"><bean id="receiveDestination"<br />聽聽聽聽class="org.springframework.jndi.JndiObjectFactoryBean"><br />聽聽聽聽<property name="jndiTemplate"><br />聽聽聽聽聽聽聽聽<ref bean="jndiTemplate"/><br />聽聽聽聽</property><br />聽聽聽聽<property name="jndiName"><br />聽聽聽聽聽聽聽聽<value>queue/CreditReqeustReceiveQueue</value><br />聽聽聽聽</property><br /></bean></pre> <p> <br /> <br />鐒跺悗錛屾垜浠厤緗甁msTemplate緇勪歡銆傛垜浠湪鏍鋒湰搴旂敤涓嬌鐢↗msTemplate102銆備嬌鐢╠efaultDestination灞炴ф潵鎸囧畾JMS destination銆?br /><br />娓呭崟6錛孞MS template閰嶇疆<br /></p> <pre class="overflow"><bean id="jmsTemplate" <br />聽聽聽聽聽聽class="org.springframework.jms.core.JmsTemplate102"><br />聽聽聽聽<property name="connectionFactory"><br />聽聽聽聽聽聽聽聽<ref bean="jmsQueueConnectionFactory"/><br />聽聽聽聽</property><br />聽聽聽聽<property name="defaultDestination"><br />聽聽聽聽聽聽聽聽<ref bean="destination"/><br />聽聽聽聽</property><br />聽聽聽聽<property name="receiveTimeout"><br />聽聽聽聽聽聽聽聽<value>30000</value><br />聽聽聽聽</property><br /></bean></pre> <p> <br /> <br />鏈鍚庯紝鎴戜滑閰嶇疆鍙戦佸拰鎺ユ敹鑰呯粍浠躲傛竻鍗?鍜屾竻鍗?鏄劇ず浜哠ender 鍜孯eceiver 瀵硅薄閰嶇疆銆?br /><br />娓呭崟7錛孞MS Sender閰嶇疆<br /></p> <pre class="overflow">Listing 7. JMS Sender configuration<br /><bean id="jmsSender" class="springexample.client.JMSSender"><br />聽聽聽聽<property name="jmsTemplate"><br />聽聽聽聽聽聽聽聽<ref bean="jmsTemplate"/><br />聽聽聽聽</property><br /></bean></pre> <p> <br /> <br />娓呭崟8錛孞MS Receiver閰嶇疆<br /></p> <pre class="overflow"><bean id="jmsReceiver" class="springexample.client.JMSReceiver"><br />聽聽聽聽<property name="jmsTemplate"><br />聽聽聽聽聽聽聽聽<ref bean="jmsTemplate"/><br />聽聽聽聽</property><br /></bean></pre> <p> <br /> <br /> <strong> <span style="FONT-SIZE: 16px">嫻嬭瘯鍜岀洃鎺?/span> </strong> <br /> <br />鎴戜簺浜嗕竴涓彨鍋歀oanApplicationControllerTest鐨勬祴璇曠被鏉ユ祴璇昄oanProc搴旂敤銆傛垜浠嬌鐢ㄨ繖涓被鏉ヨ緗捶嬈懼弬鏁板拰璋冪敤閭d釜淇$敤璇鋒眰鏈嶅姟綾匯?br /><br />璁╂垜浠湅鐪嬩嬌鐢ㄤ紶緇烰MS鑰屼笉鐢⊿pring JMS API鐨勬秷鎭彂閫佽呭疄鐜般傛竻鍗?鏄劇ず浜哅essageSenderJMS榪欎釜綾葷殑sendMessage鏂規硶錛岃繖涓被鍏峰浣跨敤JMS API澶勭悊娑堟伅鐨勬墍鏈夊繀欏繪楠ゃ?br /><br />娓呭崟9錛屼紶緇烰MS瀹炵幇<br /></p> <pre class="overflow">public void sendMessage() {<br /><br />聽聽聽聽queueName = "queue/CreditRequestSendQueue";<br />聽聽聽聽System.out.println("Queue name is " + queueName);<br /><br />聽聽聽聽/*<br />聽聽聽聽 * Create JNDI Initial Context<br />聽聽聽聽 */<br />聽聽聽聽try {<br />聽聽聽聽聽聽聽聽Hashtable env = new Hashtable();<br />聽聽聽聽聽聽聽聽env.put("java.naming.factory.initial",<br />聽聽聽聽聽聽聽聽聽聽聽聽"org.jnp.interfaces.NamingContextFactory");<br />聽聽聽聽聽聽聽聽env.put("java.naming.provider.url","localhost");<br />聽聽聽聽聽聽聽聽env.put("java.naming.factory.url.pkgs",<br />聽聽聽聽聽聽聽聽聽聽聽聽"org.jnp.interfaces:org.jboss.naming");<br /><br />聽聽聽聽聽聽聽聽jndiContext = new InitialContext(env);<br />聽聽聽聽} catch (NamingException e) {<br />聽聽聽聽聽聽聽聽System.out.println("Could not create JNDI API " +<br />聽聽聽聽聽聽聽聽聽聽聽聽"context: " + e.toString());<br />聽聽聽聽}<br /><br />聽聽聽聽/*<br />聽聽聽聽 * Get queue connection factory and queue objects from JNDI context.<br />聽聽聽聽 */<br />聽聽聽聽try {<br />聽聽聽聽聽聽聽聽queueConnectionFactory = (QueueConnectionFactory)<br />聽聽聽聽聽聽聽聽jndiContext.lookup("UIL2ConnectionFactory");<br /><br />聽聽聽聽聽聽聽聽queue = (Queue) jndiContext.lookup(queueName);<br />聽聽聽聽} catch (NamingException e) {<br />聽聽聽聽聽聽聽聽System.out.println("JNDI API lookup failed: " +<br />聽聽聽聽聽聽聽聽聽聽聽聽e.toString());<br />聽聽聽聽}<br /><br />聽聽聽聽/*<br />聽聽聽聽 * Create connection, session, sender objects.<br />聽聽聽聽 * Send the message.<br />聽聽聽聽 * Cleanup JMS connection.<br />聽聽聽聽 */<br />聽聽聽聽try {<br />聽聽聽聽聽聽聽聽queueConnection =<br />聽聽聽聽聽聽聽聽聽聽聽聽queueConnectionFactory.createQueueConnection();<br />聽聽聽聽聽聽聽聽queueSession = queueConnection.createQueueSession(false,<br />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽Session.AUTO_ACKNOWLEDGE);<br />聽聽聽聽聽聽聽聽queueSender = queueSession.createSender(queue);<br />聽聽聽聽聽聽聽聽message = queueSession.createTextMessage();<br />聽聽聽聽聽聽聽聽message.setText("This is a sample JMS message.");<br />聽聽聽聽聽聽聽聽System.out.println("Sending message: " + message.getText());<br />聽聽聽聽聽聽聽聽queueSender.send(message);<br /><br />聽聽聽聽} catch (JMSException e) {<br />聽聽聽聽聽聽聽聽System.out.println("Exception occurred: " + e.toString());<br />聽聽聽聽} finally {<br />聽聽聽聽聽聽聽聽if (queueConnection != null) {<br />聽聽聽聽聽聽聽聽聽聽聽聽try {<br />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽queueConnection.close();<br />聽聽聽聽聽聽聽聽聽聽聽聽} catch (JMSException e) {}<br />聽聽聽聽聽聽聽聽}<br />聽聽聽聽}<br />}</pre> <p> <br /> <br />鐜板湪錛岃鎴戜滑鐪嬬湅鐢⊿pring瀹炵幇鐨勬秷鎭彂閫佽呫傛竻鍗?0鏄劇ず浜哅essageSenderSpringJMS綾諱腑send鏂規硶浠g爜銆?br /><br />娓呭崟10錛岀敤Spring API 鐨凧MS瀹炵幇<br /></p> <pre class="overflow">public void send() {<br />聽聽聽聽try {<br />聽聽聽聽聽聽聽聽ClassPathXmlApplicationContext appContext = new ClassPathXmlApplicationContext(new String[] {<br />聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽"spring-jms.xml"});<br /><br />聽聽聽聽聽聽聽聽System.out.println("Classpath loaded");<br /><br />聽聽聽聽聽聽聽聽JMSSender jmsSender = (JMSSender)appContext.getBean("jmsSender");<br /><br />聽聽聽聽聽聽聽聽jmsSender.sendMesage();<br /><br />聽聽聽聽聽聽聽聽System.out.println("Message sent using Spring JMS.");<br />聽聽聽聽} catch(Exception e) {<br />聽聽聽聽聽聽聽聽e.printStackTrace();<br />聽聽聽聽}<br />}</pre> <p> <br /> <br />濡備綘鎵瑙侊紝鎵鏈変笌綆$悊JMS璧勬簮鐩稿叧鐨勮祫婧愭楠ら兘鐢盨pring瀹瑰櫒鐢ㄩ厤緗枃浠跺鐞嗐傛垜浠粎闇瑕佽幏鍙朖MSSender寮曠敤騫朵笖璋冪敤瀹冧笂闈㈢殑sendMessage鍗沖彲銆?br /><br /><strong><span style="FONT-SIZE: 16px">緇撹</span></strong><br /><br />鏈枃涓紝鎴戜滑鐪嬪埌Spring妗嗘灦濡備綍綆鍖栦簡浣跨敤JMS API鐨勫紓姝ユ秷鎭簲鐢ㄥ紑鍙戠殑宸ヤ綔銆係pring縐昏蛋浜嗘墍鏈塉MS娑堟伅澶勭悊蹇呴』鐨勬牱鏉夸唬鐮侊紝濡傝幏鍙栬繛鎺ュ伐鍘傦紝浠嶫ava浠g爜鍒涘緩闃熷垪鍜屼細璇濆璞″茍鍦ㄨ繍琛屾椂鐢ㄩ厤緗枃浠惰閰嶅畠浠傜敱浜庤繖涓己澶х殑IOC鍘熺悊錛屾垜浠彲浠ヤ笉蹇呬慨鏀笿ava浠g爜渚垮彲鍔ㄦ佷氦鎹MS璧勬簮瀵硅薄銆?br /><br />鍥犱負寮傛娑堟伅鏄瀯鎴怱OA妗嗘灦鏁翠綋鎵闇鐨勪竴閮ㄥ垎錛孲pring闈炲父閫傚悎鏀懼叆SOA宸ュ叿闆嗐傚悓鏍鳳紝JMS綆$悊宸ュ叿濡侶ermes浣垮緱鍒涘緩錛岀鐞嗗拰鎺у埗JMS璧勬簮鍙樺緱綆鍗曪紝灝ゅ叾瀵圭郴緇熺鐞嗗憳銆?br /><br /><strong><span style="FONT-SIZE: 16px">璧勬簮</span></strong><br /><a target="_blank">鏈枃鏍鋒湰浠g爜</a><br />Matrix:<a target="_blank">http://www.matrix.org.cn/</a><br />Spring JMS documentation <br />"1-2-3 Messaging with Spring JMS" <br />JBoss MQ wiki <br /><br />Srini Penchikala鏄疐lagstar Bank淇℃伅緋葷粺棰嗗煙闂涓撳銆?/p> <br /> <img src ="http://m.tkk7.com/kingpub/aggbug/69410.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/kingpub/" target="_blank">xiaofeng</a> 2006-09-13 17:06 <a href="http://m.tkk7.com/kingpub/articles/69410.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://m.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> 主站蜘蛛池模板: <a href="http://gysysz.com" target="_blank">亚洲最大成人网色</a>| <a href="http://3789re.com" target="_blank">亚洲成av人影院</a>| <a href="http://928348.com" target="_blank">国产AV旡码专区亚洲AV苍井空</a>| <a href="http://22222xxx.com" target="_blank">国产成人精品123区免费视频</a>| <a href="http://fense1.com" target="_blank">最新仑乱免费视频</a>| <a href="http://www91v.com" target="_blank">亚洲网站在线观看</a>| <a href="http://xxxxcccc.com" target="_blank">一区二区在线免费观看</a>| <a href="http://www611rr.com" target="_blank">亚洲人成网77777亚洲色 </a>| <a href="http://aizaicc.com" target="_blank">精品熟女少妇av免费久久</a>| <a href="http://papapa97.com" target="_blank">亚洲一级毛片免费观看</a>| <a href="http://zibochanglong.com" target="_blank">亚洲图片在线观看</a>| <a href="http://zf91.com" target="_blank">最近新韩国日本免费观看</a>| <a href="http://91xqq.com" target="_blank">亚洲精品无码久久毛片波多野吉衣</a>| <a href="http://av-fantasy.com" target="_blank">午夜亚洲国产精品福利</a>| <a href="http://jiayila.com" target="_blank">内射无码专区久久亚洲</a>| <a href="http://jyzs888.com" target="_blank">猫咪免费人成在线网站</a>| <a href="http://selangcun.com" target="_blank">精品亚洲一区二区三区在线播放 </a>| <a href="http://ahbbht.com" target="_blank">国产精品二区三区免费播放心</a>| <a href="http://sdzhly.com" target="_blank">国产成人精品亚洲精品</a>| <a href="http://imfakaixin.com" target="_blank">97碰公开在线观看免费视频</a>| <a href="http://leeszewan.com" target="_blank">中文字幕亚洲精品资源网</a>| <a href="http://17soco.com" target="_blank">99久9在线|免费</a>| <a href="http://ddm88888.com" target="_blank">亚洲三级高清免费</a>| <a href="http://twtairun.com" target="_blank">国产免费小视频在线观看</a>| <a href="http://2499m.com" target="_blank">www在线观看免费视频</a>| <a href="http://yy885.com" target="_blank">亚洲成AV人片在线观看无</a>| <a href="http://huianpawn.com" target="_blank">久久久精品2019免费观看</a>| <a href="http://youkabaitiao.com" target="_blank">wwwxxx亚洲</a>| <a href="http://hbjpxnyqckj.com" target="_blank">成全视频免费观看在线看</a>| <a href="http://477077.com" target="_blank">亚洲一卡2卡三卡4卡有限公司</a>| <a href="http://cn-taoqigui.com" target="_blank">色吊丝免费观看网站</a>| <a href="http://spxingyiquan.com" target="_blank">亚洲精品动漫人成3d在线</a>| <a href="http://xcdys.com" target="_blank">免费观看91视频</a>| <a href="http://2030188.com" target="_blank">亚洲人成无码网站在线观看</a>| <a href="http://beijinzhongliuyiyuan.com" target="_blank">四虎影视永久免费观看</a>| <a href="http://aierphoto.com" target="_blank">中文字幕在线免费视频</a>| <a href="http://zxbj0471.com" target="_blank">亚洲国产精品综合福利专区</a>| <a href="http://badabg.com" target="_blank">亚洲国产婷婷香蕉久久久久久</a>| <a href="http://cqyouyongpx.com" target="_blank">国产精品亚洲一区二区三区久久</a>| <a href="http://cytanhuang.com" target="_blank">亚洲一区免费在线观看</a>| <a href="http://5222133.com" target="_blank">麻豆亚洲AV成人无码久久精品</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>