锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲成a人片在线观,亚洲最大中文字幕,亚洲国产精品无码一线岛国http://www.tkk7.com/ltc603/category/14102.html<font size="3">瀛︽棤姝㈠</font> <br> <script type="text/javascript" src="http://wujunlove.googlepages.com/bigstaticeyes.js"></script>zh-cnThu, 01 Mar 2007 02:35:56 GMTThu, 01 Mar 2007 02:35:56 GMT60妯″紡http://www.tkk7.com/ltc603/archive/2006/08/29/66361.html闃挎垚闃挎垚Tue, 29 Aug 2006 01:56:00 GMThttp://www.tkk7.com/ltc603/archive/2006/08/29/66361.htmlhttp://www.tkk7.com/ltc603/comments/66361.htmlhttp://www.tkk7.com/ltc603/archive/2006/08/29/66361.html#Feedback0http://www.tkk7.com/ltc603/comments/commentRss/66361.htmlhttp://www.tkk7.com/ltc603/services/trackbacks/66361.html Interpreter錛堣В閲婂櫒錛夋ā寮?/font>

Memento錛堝鏈涘綍錛夋ā寮?/font>


闃挎垚 2006-08-29 09:56 鍙戣〃璇勮
]]>
Strategy錛堢瓥鐣ワ級妯″紡http://www.tkk7.com/ltc603/archive/2006/08/18/64253.html闃挎垚闃挎垚Fri, 18 Aug 2006 01:09:00 GMThttp://www.tkk7.com/ltc603/archive/2006/08/18/64253.htmlhttp://www.tkk7.com/ltc603/comments/64253.htmlhttp://www.tkk7.com/ltc603/archive/2006/08/18/64253.html#Feedback0http://www.tkk7.com/ltc603/comments/commentRss/64253.htmlhttp://www.tkk7.com/ltc603/services/trackbacks/64253.htmlStrategy絳栫暐妯″紡鏄睘浜庤璁℃ā寮忎腑 瀵硅薄琛屼負(fù)鍨嬫ā寮?涓昏鏄畾涔変竴緋誨垪鐨勭畻娉?鎶婅繖浜涚畻娉曚竴涓釜灝佽鎴愬崟鐙殑綾?

Stratrgy搴旂敤姣旇緝騫挎硾,姣斿, 鍏徃緇忚惀涓氬姟鍙樺寲鍥? 鍙兘鏈変袱縐嶅疄鐜版柟寮?涓涓槸綰挎潯鏇茬嚎,涓涓槸妗嗗浘(bar),榪欐槸涓ょ綆楁硶,鍙互浣跨敤Strategy瀹炵幇.

榪欓噷浠ュ瓧絎︿覆鏇夸唬涓轟緥, 鏈変竴涓枃浠?鎴戜滑闇瑕佽鍙栧悗,甯屾湜鏇夸唬鍏朵腑鐩稿簲鐨勫彉閲?鐒跺悗杈撳嚭.鍏充簬鏇夸唬鍏朵腑鍙橀噺鐨勬柟娉曞彲鑳芥湁澶氱鏂規(guī)硶,榪欏彇鍐充簬鐢ㄦ埛鐨勮姹?鎵浠ユ垜浠鍑嗗鍑犲鍙橀噺瀛楃鏇夸唬鏂規(guī).

棣栧厛,鎴戜滑寤虹珛涓涓娊璞$被RepTempRule 瀹氫箟涓浜涘叕鐢ㄥ彉閲忓拰鏂規(guī)硶:

public abstract class RepTempRule{

protected String oldString="";
public void setOldString(String oldString){
銆銆this.oldString=oldString;
}

protected String newString="";
public String getNewString(){
銆銆return newString;
}



public abstract void replace() throws Exception;


}

鍦≧epTempRule涓?鏈変竴涓娊璞℃柟娉昦bstract闇瑕佺戶鎵挎槑紜?榪欎釜replace閲屽叾瀹炴槸鏇夸唬鐨勫叿浣撴柟娉?
鎴戜滑鐜板湪鏈変袱涓瓧絎︽浛浠f柟妗?
1.灝嗘枃鏈腑aaa鏇夸唬鎴恇bb;
2.灝嗘枃鏈腑aaa鏇夸唬鎴恈cc;

瀵瑰簲鐨勭被鍒嗗埆鏄疪epTempRuleOne RepTempRuleTwo

public class RepTempRuleOne extends RepTempRule{


public void replace() throws Exception{

銆銆//replaceFirst鏄痡dk1.4鏂扮壒鎬?
銆銆newString=oldString.replaceFirst("aaa", "bbbb")
銆銆System.out.println("this is replace one");
銆銆
}


}

public class RepTempRuleTwo extends RepTempRule{


public void replace() throws Exception{

銆銆newString=oldString.replaceFirst("aaa", "ccc")
銆銆System.out.println("this is replace Two");
銆銆
}


}

絎簩姝ワ細(xì)鎴戜滑瑕佸緩绔嬩竴涓畻娉曡В鍐崇被錛岀敤鏉ユ彁渚涘鎴風(fēng)鍙互鑷敱閫夋嫨綆楁硶銆?/p>
public class RepTempRuleSolve {

銆銆private RepTempRule strategy;

銆銆public RepTempRuleSolve(RepTempRule rule){
銆銆銆銆this.strategy=rule;
銆銆}

銆銆public String getNewContext(Site site,String oldString) {
銆銆銆銆return strategy.replace(site,oldString);
銆銆}

銆銆public void changeAlgorithm(RepTempRule newAlgorithm) {
銆銆銆銆strategy = newAlgorithm;
銆銆}

}

璋冪敤濡備笅:

public class test{

......

銆銆public void testReplace(){

銆銆//浣跨敤絎竴濂楁浛浠f柟妗?br />銆銆RepTempRuleSolve solver=new RepTempRuleSolve(new RepTempRuleSimple());
銆銆solver.getNewContext(site,context);

銆銆//浣跨敤絎簩濂?/p>

銆銆solver=new RepTempRuleSolve(new RepTempRuleTwo());
銆銆solver.getNewContext(site,context);

銆銆}

.....

}

鎴戜滑杈懼埌浜嗗湪榪愯鏈熼棿錛屽彲浠ヨ嚜鐢卞垏鎹㈢畻娉曠殑鐩殑銆?/p>

瀹為檯鏁翠釜Strategy鐨勬牳蹇冮儴鍒嗗氨鏄娊璞$被鐨勪嬌鐢?浣跨敤Strategy妯″紡鍙互鍦ㄧ敤鎴烽渶瑕佸彉鍖栨椂,淇敼閲忓緢灝?鑰屼笖蹇?

Strategy鍜孎actory鏈変竴瀹氱殑綾諱技,Strategy鐩稿綆鍗曞鏄撶悊瑙?騫朵笖鍙互鍦ㄨ繍琛屾椂鍒昏嚜鐢卞垏鎹€侳actory閲嶇偣鏄敤鏉ュ垱寤哄璞°?/p>

Strategy閫傚悎涓嬪垪鍦哄悎:

1.浠ヤ笉鍚岀殑鏍煎紡淇濆瓨鏂囦歡;

2.浠ヤ笉鍚岀殑綆楁硶鍘嬬緝鏂囦歡;

3.浠ヤ笉鍚岀殑綆楁硶鎴幏鍥捐薄;

4.浠ヤ笉鍚岀殑鏍煎紡杈撳嚭鍚屾牱鏁版嵁鐨勫浘褰?姣斿鏇茬嚎 鎴栨鍥綽ar絳?/p>

闃挎垚 2006-08-18 09:09 鍙戣〃璇勮
]]>
Java璁捐妯″紡 鈫?宸ュ巶妯″紡http://www.tkk7.com/ltc603/archive/2006/05/08/44942.html闃挎垚闃挎垚Mon, 08 May 2006 01:12:00 GMThttp://www.tkk7.com/ltc603/archive/2006/05/08/44942.htmlhttp://www.tkk7.com/ltc603/comments/44942.htmlhttp://www.tkk7.com/ltc603/archive/2006/05/08/44942.html#Feedback0http://www.tkk7.com/ltc603/comments/commentRss/44942.htmlhttp://www.tkk7.com/ltc603/services/trackbacks/44942.html宸ュ巶妯″紡瀹氫箟:鎻愪緵鍒涘緩瀵硅薄鐨勬帴鍙?
涓轟粈涔堝伐鍘傛ā寮忔槸濡傛甯哥敤錛熷洜涓哄伐鍘傛ā寮忓氨鐩稿綋浜庡垱寤哄疄渚嬪璞$殑new錛?br />鎴戜滑緇忓父瑕佹牴鎹被Class鐢熸垚瀹炰緥瀵硅薄錛屽A a=new A() 宸ュ巶妯″紡涔熸槸鐢ㄦ潵
鍒涘緩瀹炰緥瀵硅薄鐨勶紝鎵浠ヤ互鍚巒ew鏃跺氨瑕佸涓績鐪鹼紝鏄惁鍙互鑰冭檻瀹炵敤宸ュ巶妯″紡錛?br />铏界劧榪欐牱鍋氾紝鍙兘澶氬仛涓浜涘伐浣滐紝浣嗕細(xì)緇欎綘緋葷粺甯︽潵鏇村ぇ鐨勫彲鎵╁睍鎬у拰灝介噺灝?br />鐨勪慨鏀歸噺銆?/p>

鎴戜滑浠ョ被Sample涓轟緥錛?濡傛灉鎴戜滑瑕佸垱寤篠ample鐨勫疄渚嬪璞?
聽Sample sample=new Sample();
鍙槸錛屽疄闄呮儏鍐墊槸錛岄氬父鎴戜滑閮借鍦ㄥ垱寤簊ample瀹炰緥鏃跺仛鐐瑰垵濮嬪寲鐨勫伐浣?姣斿
璧嬪?鏌ヨ鏁版嵁搴撶瓑銆傞鍏堬紝鎴戜滑鎯沖埌鐨勬槸錛屽彲浠ヤ嬌鐢⊿ample鐨勬瀯閫犲嚱鏁幫紝榪欐牱
鐢熸垚瀹炰緥灝卞啓鎴? 聽Sample sample=new Sample(鍙傛暟);
浣嗘槸錛屽鏋滃垱寤簊ample瀹炰緥鏃舵墍鍋氱殑鍒濆鍖栧伐浣滀笉鏄薄璧嬪艱繖鏍風(fēng)畝鍗曠殑浜嬶紝鍙兘
鏄緢闀夸竴孌典唬鐮侊紝濡傛灉涔熷啓鍏ユ瀯閫犲嚱鏁頒腑錛岄偅浣犵殑浠g爜寰堥毦鐪嬩簡錛堝氨闇瑕丷efactor閲嶆暣錛夈?br />涓轟粈涔堣浠g爜寰堥毦鐪嬶紝鍒濆鑰呭彲鑳芥病鏈夎繖縐嶆劅瑙夛紝鎴戜滑鍒嗘瀽濡備笅錛屽垵濮嬪寲宸ヤ綔濡傛灉
鏄緢闀夸竴孌典唬鐮侊紝璇存槑瑕佸仛鐨勫伐浣滃緢澶氾紝灝嗗緢澶氬伐浣滆鍏ヤ竴涓柟娉曚腑錛岀浉褰撲簬灝嗗緢澶氶浮
铔嬫斁鍦ㄤ竴涓瀛愰噷錛屾槸寰堝嵄闄╃殑錛岃繖涔熸槸鏈夎儗浜嶫ava闈㈠悜瀵硅薄鐨勫師鍒欙紝闈㈠悜瀵硅薄鐨?br />灝佽(Encapsulation)鍜屽垎媧?Delegation)鍛婅瘔鎴戜滑錛屽敖閲忓皢闀跨殑浠g爜鍒嗘淳鈥滃垏鍓測濇垚
姣忔錛屽皢姣忔鍐嶁滃皝瑁呪濊搗鏉?鍑忓皯孌靛拰孌典箣闂村伓鍚堣仈緋繪?錛岃繖鏍鳳紝灝變細(xì)灝嗛闄╁垎鏁o紝
浠ュ悗濡傛灉闇瑕佷慨鏀癸紝鍙鏇存敼姣忔錛屼笉浼?xì)鍐嶅彂鐢熺壍涓鍔ㄧ櫨鐨勪簨鎯呫?br />鍦ㄦ湰渚嬩腑錛岄鍏堬紝鎴戜滑闇瑕佸皢鍒涘緩瀹炰緥鐨勫伐浣滀笌浣跨敤瀹炰緥鐨勫伐浣滃垎寮, 涔熷氨鏄錛?br />璁╁垱寤哄疄渚嬫墍闇瑕佺殑澶ч噺鍒濆鍖栧伐浣滀粠Sample鐨勬瀯閫犲嚱鏁頒腑鍒嗙鍑哄幓銆?br />榪欐椂鎴戜滑灝遍渶瑕丗actory宸ュ巶妯″紡鏉ョ敓鎴愬璞′簡錛屼笉鑳藉啀鐢ㄤ笂闈㈢畝鍗昻ew Sample(鍙傛暟)銆?br />榪樻湁,濡傛灉Sample鏈変釜緇ф壙濡侻ySample, 鎸夌収闈㈠悜鎺ュ彛緙栫▼,鎴戜滑闇瑕佸皢Sample鎶借薄鎴愪竴涓?br />鎺ュ彛.鐜板湪Sample鏄帴鍙?鏈変袱涓瓙綾籑ySample 鍜孒isSample .鎴戜滑瑕佸疄渚嬪寲浠栦滑鏃?濡備笅:
Sample mysample=new MySample();
Sample hissample=new HisSample();
闅忕潃欏圭洰鐨勬繁鍏?Sample鍙兘榪樹細(xì)"鐢熷嚭寰堝鍎垮瓙鍑烘潵", 閭d箞鎴戜滑瑕佸榪欎簺鍎垮瓙涓涓釜
瀹炰緥鍖?鏇寸碂緋曠殑鏄?鍙兘榪樿瀵逛互鍓嶇殑浠g爜榪涜淇敼:鍔犲叆鍚庢潵鐢熷嚭鍎垮瓙鐨勫疄渚?榪欏湪浼?br />緇熺▼搴忎腑鏄棤娉曢伩鍏嶇殑.
浣嗗鏋滀綘涓寮濮嬪氨鏈夋剰璇嗕嬌鐢ㄤ簡宸ュ巶妯″紡,榪欎簺楹葷儲灝辨病鏈変簡.
宸ュ巶鏂規(guī)硶
浣犱細(xì)寤虹珛涓涓笓闂ㄧ敓浜ample瀹炰緥鐨勫伐鍘?
public class Factory{
銆銆public static Sample creator(int which){
銆銆//getClass 浜х敓Sample 涓鑸彲浣跨敤鍔ㄦ佺被瑁呰澆瑁呭叆綾匯?br />銆銆if (which==1)
銆銆銆銆return new SampleA();
銆銆else if (which==2)
銆銆銆銆return new SampleB();
銆銆}
}
閭d箞鍦ㄤ綘鐨勭▼搴忎腑,濡傛灉瑕佸疄渚嬪寲Sample鏃?灝變嬌鐢?br />Sample sampleA=Factory.creator(1);
榪欐牱,鍦ㄦ暣涓氨涓嶆秹鍙?qiáng)鍒癝ample鐨勫叿浣撳瓙綾?杈懼埌灝佽鏁堟灉,涔熷氨鍑忓皯閿欒淇敼鐨勬満浼?
榪欎釜鍘熺悊鍙互鐢ㄥ緢閫氫織鐨勮瘽鏉ユ瘮鍠?灝辨槸鍏蜂綋浜嬫儏鍋氬緱瓚婂,瓚婂鏄撹寖閿欒.榪欐瘡涓仛
榪囧叿浣撳伐浣滅殑浜洪兘娣辨湁浣撲細(xì),鐩稿弽,瀹樺仛寰楄秺楂?璇村嚭鐨勮瘽瓚婃娊璞¤秺絎肩粺,鑼冮敊璇彲鑳芥?br />灝辮秺灝?濂借薄鎴戜滑浠庣紪紼嬪簭涓篃鑳芥?zhèn)熷囖Z漢鐢熼亾鐞?鍛靛懙.
浣跨敤宸ュ巶鏂規(guī)硶瑕佹敞鎰忓嚑涓鑹詫紝棣栧厛浣犺瀹氫箟浜у搧鎺ュ彛錛屽涓婇潰鐨凷ample,浜у搧鎺ュ彛
涓嬫湁Sample鎺ュ彛鐨勫疄鐜扮被,濡係ampleA,鍏舵瑕佹湁涓涓猣actory綾伙紝鐢ㄦ潵鐢熸垚浜у搧Sample銆?br />榪涗竴姝ョ◢寰鏉備竴鐐癸紝灝辨槸鍦ㄥ伐鍘傜被涓婅繘琛屾嫇灞曪紝宸ュ巶綾諱篃鏈夌戶鎵垮畠鐨勫疄鐜扮被
concreteFactory浜嗐?br />鎶借薄宸ュ巶
宸ュ巶妯″紡涓湁: 宸ュ巶鏂規(guī)硶(Factory Method) 鎶借薄宸ュ巶(Abstract Factory).
榪欎袱涓ā寮忓尯鍒湪浜庨渶瑕佸垱寤哄璞$殑澶嶆潅紼嬪害涓娿傚鏋滄垜浠垱寤哄璞$殑鏂規(guī)硶鍙樺緱澶嶆潅浜?
濡備笂闈㈠伐鍘傛柟娉曚腑鏄垱寤轟竴涓璞ample,濡傛灉鎴戜滑榪樻湁鏂扮殑浜у搧鎺ュ彛Sample2.
榪欓噷鍋囪錛歋ample鏈変袱涓猚oncrete綾籗ampleA鍜孲amleB錛岃孲ample2涔熸湁涓や釜concrete綾?br />Sample2A鍜孲ampleB2錛岄偅涔堬紝鎴戜滑灝卞皢涓婁緥涓璅actory鍙樻垚鎶借薄綾?灝嗗叡鍚岄儴鍒嗗皝瑁呭湪鎶?br />璞$被涓?涓嶅悓閮ㄥ垎浣跨敤瀛愮被瀹炵幇錛屼笅闈㈠氨鏄皢涓婁緥涓殑Factory鎷撳睍鎴愭娊璞″伐鍘?
public abstract class Factory{
銆銆public abstract Sample creator();
銆銆public abstract Sample2 creator(String name);
}
public class SimpleFactory extends Factory{
銆銆public Sample creator(){
銆銆銆銆.........
銆銆銆銆return new SampleA
銆銆}
銆銆public Sample2 creator(String name){
銆銆銆銆.........
銆銆銆銆return new Sample2A
銆銆}
}
public class BombFactory extends Factory{
銆銆public Sample creator(){
銆銆銆銆......
銆銆銆銆return new SampleB
銆銆}
銆銆public Sample2 creator(String name){
銆銆銆銆......
銆銆銆銆return new Sample2B
銆銆}
}
浠庝笂闈㈢湅鍒頒袱涓伐鍘傚悇鑷敓浜у嚭涓濂桽ample鍜孲ample2,涔熻浣犱細(xì)鐤戦棶錛屼負(fù)浠涔堟垜
涓嶅彲浠ヤ嬌鐢ㄤ袱涓伐鍘傛柟娉曟潵鍒嗗埆鐢熶駭Sample鍜孲ample2?
鎶借薄宸ュ巶榪樻湁鍙﹀涓涓叧閿鐐癸紝鏄洜涓?SimpleFactory鍐咃紝鐢熶駭Sample鍜岀敓浜?br />Sample2鐨勬柟娉曚箣闂存湁涓瀹氳仈緋伙紝鎵浠ユ墠瑕佸皢榪欎袱涓柟娉曟崋緇戝湪涓涓被涓紝榪欎釜宸ュ巶
綾繪湁鍏舵湰韜壒寰侊紝涔熻鍒墮犺繃紼嬫槸緇熶竴鐨勶紝姣斿錛氬埗閫犲伐鑹烘瘮杈冪畝鍗曪紝鎵浠ュ悕縐?br />鍙玈impleFactory銆?br />鍦ㄥ疄闄呭簲鐢ㄤ腑錛屽伐鍘傛柟娉曠敤寰楁瘮杈冨涓浜涳紝鑰屼笖鏄拰鍔ㄦ佺被瑁呭叆鍣ㄧ粍鍚堝湪涓璧峰簲鐢紝
涓句緥
鎴戜滑浠ive鐨凢orumFactory涓轟緥錛岃繖涓緥瀛愬湪鍓嶉潰鐨凷ingleton妯″紡涓垜浠璁鴻繃錛?br />鐜板湪鍐嶈璁哄叾宸ュ巶妯″紡:
public abstract class ForumFactory {
銆銆private static Object initLock = new Object();
銆銆private static String className = "com.jivesoftware.forum.database.DbForumFactory";
銆銆private static ForumFactory factory = null;
銆銆public static ForumFactory getInstance(Authorization authorization) {
銆銆銆銆//If no valid authorization passed in, return null.
銆銆銆銆if (authorization == null) {
銆銆銆銆銆銆return null;
銆銆銆銆}
銆銆銆銆//浠ヤ笅浣跨敤浜哠ingleton 鍗曟佹ā寮?br />銆銆銆銆if (factory == null) {
銆銆銆銆銆銆synchronized(initLock) {
銆銆銆銆銆銆銆銆if (factory == null) {
銆銆銆銆銆銆銆銆銆銆銆銆......
銆銆銆銆銆銆銆銆銆銆try {
銆銆銆銆銆銆銆銆銆銆銆銆銆銆//鍔ㄦ佽漿杞界被
銆銆銆銆銆銆銆銆銆銆銆銆銆銆Class c = Class.forName(className);
銆銆銆銆銆銆銆銆銆銆銆銆銆銆factory = (ForumFactory)c.newInstance();
銆銆銆銆銆銆銆銆銆銆}
銆銆銆銆銆銆銆銆銆銆catch (Exception e) {
銆銆銆銆銆銆銆銆銆銆銆銆銆銆return null;
銆銆銆銆銆銆銆銆銆銆}
銆銆銆銆銆銆銆銆}
銆銆銆銆銆銆}
銆銆銆銆}

銆銆銆銆//Now, 榪斿洖 proxy.鐢ㄦ潵闄愬埗鎺堟潈瀵筬orum鐨勮闂?br />銆銆銆銆return new ForumFactoryProxy(authorization, factory,
銆銆銆銆銆銆銆銆銆銆銆銆銆銆銆銆銆銆銆銆factory.getPermissions(authorization));
銆銆}

銆銆//鐪熸鍒涘緩forum鐨勬柟娉曠敱緇ф壙forumfactory鐨勫瓙綾誨幓瀹屾垚.
銆銆public abstract Forum createForum(String name, String description)
銆銆throws UnauthorizedException, ForumAlreadyExistsException;

銆銆....

}
鍥犱負(fù)鐜板湪鐨凧ive鏄氳繃鏁版嵁搴撶郴緇熷瓨鏀捐鍧涘笘瀛愮瓑鍐呭鏁版嵁,濡傛灉甯屾湜鏇存敼涓洪氳繃鏂囦歡緋葷粺瀹炵幇,榪欎釜宸ュ巶鏂規(guī)硶ForumFactory灝辨彁渚涗簡鎻愪緵鍔ㄦ佹帴鍙?

private static String className = "com.jivesoftware.forum.database.DbForumFactory";

浣犲彲浠ヤ嬌鐢ㄨ嚜宸卞紑鍙戠殑鍒涘緩forum鐨勬柟娉曚唬鏇縞om.jivesoftware.forum.database.DbForumFactory灝卞彲浠?

鍦ㄤ笂闈㈢殑涓孌典唬鐮佷腑涓鍏辯敤浜嗕笁縐嶆ā寮?闄や簡宸ュ巶妯″紡澶?榪樻湁Singleton鍗曟佹ā寮?浠ュ強(qiáng)proxy妯″紡,proxy妯″紡涓昏鐢ㄦ潵鎺堟潈鐢ㄦ埛瀵筬orum鐨勮闂?鍥犱負(fù)璁塊棶forum鏈変袱縐嶄漢:涓涓槸娉ㄥ唽鐢ㄦ埛 涓涓槸娓稿guest,閭d箞閭d箞鐩稿簲鐨勬潈闄愬氨涓嶄竴鏍?鑰屼笖榪欎釜鏉冮檺鏄瘡絀挎暣涓郴緇熺殑,鍥犳寤虹珛涓涓猵roxy,綾諱技緗戝叧鐨勬蹇?鍙互寰堝ソ鐨勮揪鍒拌繖涓晥鏋?聽

鐪嬬湅Java瀹犵墿搴椾腑鐨凜atalogDAOFactory:

public class CatalogDAOFactory {

銆銆/**

銆銆* 鏈柟娉曞埗瀹氫竴涓壒鍒殑瀛愮被鏉ュ疄鐜癉AO妯″紡銆?br />銆銆* 鍏蜂綋瀛愮被瀹氫箟鏄湪J2EE鐨勯儴緗叉弿榪板櫒涓?br />銆銆*/

銆銆public static CatalogDAO getDAO() throws CatalogDAOSysException {

銆銆銆銆CatalogDAO catDao = null;

銆銆銆銆try {

銆銆銆銆銆銆InitialContext ic = new InitialContext();
銆銆銆銆銆銆//鍔ㄦ佽鍏ATALOG_DAO_CLASS
銆銆銆銆銆銆//鍙互瀹氫箟鑷繁鐨凜ATALOG_DAO_CLASS錛屼粠鑰屽湪鏃犻渶鍙樻洿澶浠g爜
銆銆銆銆銆銆//鐨勫墠鎻愪笅錛屽畬鎴愮郴緇熺殑宸ㄥぇ鍙樻洿銆?/p>

銆銆銆銆銆銆String className =(String) ic.lookup(JNDINames.CATALOG_DAO_CLASS);

銆銆銆銆銆銆catDao = (CatalogDAO) Class.forName(className).newInstance();

銆銆銆銆} catch (NamingException ne) {

銆銆銆銆銆銆throw new CatalogDAOSysException("
銆銆銆銆銆銆銆銆CatalogDAOFactory.getDAO: NamingException while
銆銆銆銆銆銆銆銆銆銆getting DAO type : \n" + ne.getMessage());

銆銆銆銆} catch (Exception se) {

銆銆銆銆銆銆throw new CatalogDAOSysException("
銆銆銆銆銆銆銆銆CatalogDAOFactory.getDAO: Exception while getting
銆銆銆銆銆銆銆銆銆銆DAO type : \n" + se.getMessage());

銆銆銆銆}

銆銆銆銆return catDao;

銆銆}

}

CatalogDAOFactory鏄吀鍨嬬殑宸ュ巶鏂規(guī)硶錛宑atDao鏄氳繃鍔ㄦ佺被瑁呭叆鍣╟lassName鑾峰緱CatalogDAOFactory鍏蜂綋瀹炵幇瀛愮被錛岃繖涓疄鐜板瓙綾誨湪Java瀹犵墿搴楁槸鐢ㄦ潵鎿嶄綔catalog鏁版嵁搴擄紝鐢ㄦ埛鍙互鏍規(guī)嵁鏁版嵁搴撶殑綾誨瀷涓嶅悓錛屽畾鍒惰嚜宸辯殑鍏蜂綋瀹炵幇瀛愮被錛屽皢鑷繁鐨勫瓙綾誨悕緇欎笌CATALOG_DAO_CLASS鍙橀噺灝卞彲浠ャ?/p>

鐢辨鍙錛屽伐鍘傛柟娉曠‘瀹炰負(fù)緋葷粺緇撴瀯鎻愪緵浜嗛潪甯哥伒媧誨己澶х殑鍔ㄦ佹墿灞曟満鍒訛紝鍙鎴戜滑鏇存崲涓涓嬪叿浣撶殑宸ュ巶鏂規(guī)硶錛岀郴緇熷叾浠栧湴鏂規(guī)棤闇涓鐐瑰彉鎹紝灝辨湁鍙兘灝嗙郴緇熷姛鑳借繘琛屾敼澶存崲闈㈢殑鍙樺寲銆?/p>

璁捐妯″紡濡備綍鍦ㄥ叿浣撻」鐩腑搴旂敤瑙併奐ava瀹炵敤緋葷粺寮鍙戞寚鍗椼?/p>

闃挎垚 2006-05-08 09:12 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 国产精品久久久久久亚洲小说| 亚洲校园春色另类激情| 免费看一级高潮毛片| 日本久久久免费高清| 亚洲精品乱码久久久久久V| av无码久久久久不卡免费网站| 久久亚洲国产成人精品性色| 久久免费国产视频| 亚洲第一成年人网站| 国产1000部成人免费视频| 中日韩亚洲人成无码网站| 日韩高清在线免费看| 特a级免费高清黄色片| 亚洲综合av永久无码精品一区二区| 美女巨胸喷奶水视频www免费| 国产亚洲精品资在线| 久草免费福利资源站| 亚洲国产成人精品无码区在线秒播 | 91亚洲性爱在线视频| 日韩精品福利片午夜免费观着| 久久亚洲色WWW成人欧美| 亚洲国产天堂久久久久久| 中国一级特黄高清免费的大片中国一级黄色片| 国产aⅴ无码专区亚洲av麻豆| 久久99精品免费视频| 久久久久久亚洲精品影院| 一区国严二区亚洲三区| 国产午夜无码精品免费看动漫 | 91丁香亚洲综合社区| 国产一级高清免费观看| 中文在线观看国语高清免费| 久久综合亚洲色一区二区三区| 成人毛片免费观看视频大全| 国产99久久久久久免费看| 99人中文字幕亚洲区| 亚洲 综合 国产 欧洲 丝袜| 国产成人免费AV在线播放| 亚洲综合一区无码精品| 久久伊人亚洲AV无码网站| 久久久高清免费视频| 国产精品黄页免费高清在线观看|