锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲成人免费电影,最新亚洲人成无码网www电影,亚洲国产精品自在线一区二区 http://www.tkk7.com/cpsing/category/18113.htmlzh-cnWed, 28 Feb 2007 03:45:23 GMTWed, 28 Feb 2007 03:45:23 GMT60javascript 瀛愮獥鍙?鐖剁獥鍙?浼犲奸棶棰?/title><link>http://www.tkk7.com/cpsing/articles/94246.html</link><dc:creator>cpsing</dc:creator><author>cpsing</author><pubDate>Tue, 16 Jan 2007 09:13:00 GMT</pubDate><guid>http://www.tkk7.com/cpsing/articles/94246.html</guid><wfw:comment>http://www.tkk7.com/cpsing/comments/94246.html</wfw:comment><comments>http://www.tkk7.com/cpsing/articles/94246.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/cpsing/comments/commentRss/94246.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/cpsing/services/trackbacks/94246.html</trackback:ping><description><![CDATA[ <p _fckxhtmljob="1">1. 鍒鋒柊鐖剁獥鍙?/p> <p _fckxhtmljob="1">聽聽聽聽 a聽 opener.parent.refresh()</p> <p _fckxhtmljob="1">聽聽聽聽聽 b聽聽 opener.location.relaod()</p> <p _fckxhtmljob="1">聽聽聽聽聽聽c聽 <font color="#0000cc" _fckxhtmljob="1">window</font><font color="#006600" _fckxhtmljob="1">.</font><font color="#0000cc" _fckxhtmljob="1">opener</font><font color="#006600" _fckxhtmljob="1">.</font><font color="#0000cc" _fckxhtmljob="1">location</font><font color="#006600" _fckxhtmljob="1">.</font><font color="#0000cc" _fckxhtmljob="1">href </font><font color="#006600" _fckxhtmljob="1">= </font><font color="#0000cc" _fckxhtmljob="1">window</font><font color="#006600" _fckxhtmljob="1">.</font><font color="#0000cc" _fckxhtmljob="1">opener</font><font color="#006600" _fckxhtmljob="1">.</font><font color="#0000cc" _fckxhtmljob="1">location</font><font color="#006600" _fckxhtmljob="1">.</font><font color="#0000cc" _fckxhtmljob="1">href</font><font color="#006600" _fckxhtmljob="1">;</font></p> <p _fckxhtmljob="1"> <font color="#006600" _fckxhtmljob="1">聽聽聽聽聽聽d聽聽<font color="#000000" _fckxhtmljob="1">聽 Page.RegisterStartupScript("","<script>window.showModalDial('scr,'','scroll:0;status:0;help:0;resizable:0;dialogWidth:530px;dialogHeight:350px');document.forms(0).Button2.click();</script>";);</font><br _fckxhtmljob="1" /></font>聽聽 </p> <p _fckxhtmljob="1">聽</p> <img src ="http://www.tkk7.com/cpsing/aggbug/94246.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/cpsing/" target="_blank">cpsing</a> 2007-01-16 17:13 <a href="http://www.tkk7.com/cpsing/articles/94246.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>寮傚父澶勭悊妗嗘灦-ZThttp://www.tkk7.com/cpsing/articles/85778.htmlcpsingcpsingWed, 06 Dec 2006 03:03:00 GMThttp://www.tkk7.com/cpsing/articles/85778.htmlhttp://www.tkk7.com/cpsing/comments/85778.htmlhttp://www.tkk7.com/cpsing/articles/85778.html#Feedback0http://www.tkk7.com/cpsing/comments/commentRss/85778.htmlhttp://www.tkk7.com/cpsing/services/trackbacks/85778.html

鏋勫緩鏇村ソ鐨勫紓甯稿鐞嗘鏋?/h2> chris 鍙戣〃浜?2005-03-13 12:00:00
浣滆?McLaughlin聽聽聽聽 璇勮鏁?78 鐐瑰嚮鏁?949聽聽聽聽 鎶曠エ鎬誨緱鍒?0 鎶曠エ鎬諱漢嬈?0
鍏抽敭瀛?

鎽樿:

鍦?EJB 鏈浣沖疄璺電殑榪欑瘒涓撴爮鏂囩珷涓紝Brett McLaughlin 瑙i噴浜嗕負浠涔堝寮傚父澶勭悊鎶曞叆涓鐐瑰叧娉ㄥ氨浼氱粰鎴戜滑甯︽潵寰堝ぇ鐨勫府鍔╋紝騫跺悜鎮ㄥ睍紺轟簡涓ょ綆鍗曟妧鏈紝瀹冧滑灝嗗府鍔╂偍姝g‘鍦版瀯寤烘洿鍋ュ.涓旀湁鐢ㄧ殑寮傚父澶勭悊妗嗘灦銆?
浼佷笟搴旂敤紼嬪簭鍦ㄦ瀯寤烘椂甯稿父瀵瑰紓甯稿鐞嗗叧娉ㄧ敋灝戯紝榪欎細閫犳垚瀵逛綆綰у紓甯革紙濡?java.rmi.RemoteException 鍜?javax.naming.NamingException錛夌殑榪囧害渚濊禆銆傚湪 EJB 鏈浣沖疄璺電殑榪欑瘒涓撴爮鏂囩珷涓紝Brett McLaughlin 瑙i噴浜嗕負浠涔堝寮傚父澶勭悊鎶曞叆涓鐐瑰叧娉ㄥ氨浼氱粰鎴戜滑甯︽潵寰堝ぇ鐨勫府鍔╋紝騫跺悜鎮ㄥ睍紺轟簡涓ょ綆鍗曟妧鏈紝瀹冧滑灝嗗府鍔╂偍姝g‘鍦版瀯寤烘洿鍋ュ.涓旀湁鐢ㄧ殑寮傚父澶勭悊妗嗘灦銆?br />
鍦ㄦ湰緋誨垪鍏堝墠鐨勬妧宸ф枃绔犱腑錛屽紓甯稿鐞嗕笉灞炰簬璁ㄨ鐨勬牳蹇冭寖鍥翠箣鍐呫備絾鏄紝鎮ㄥ彲鑳戒細鍙戠幇涓鐐癸紝閭e氨鏄垜浠竴鐩撮兘鍥為伩鏉ヨ嚜 Web 灞傜殑浣庣駭寮傚父銆傛垜浠悜瀹㈡埛鏈烘彁渚涜濡?ApplicationException 鍜?InvalidDataException 涔嬬被鐨勫紓甯革紝鑰屾病鏈夎 Web 灞傚鐞嗚薄 java.rmi.RemoteException 鎴?javax.naming.NamingException 榪欐牱鐨勫紓甯搞?br />
榪滅▼鍜屽懡鍚嶅紓甯告槸緋葷粺綰у紓甯革紝鑰屽簲鐢ㄧ▼搴忓拰闈炴硶鏁版嵁寮傚父鏄笟鍔$駭寮傚父錛屽洜涓哄畠浠彁浜ゆ洿閫傜敤鐨勪笟鍔′俊鎭傚綋鍐沖畾鎶涘嚭浣曠綾誨瀷鐨勫紓甯告椂錛屾偍搴旇鎬繪槸棣栧厛鑰冭檻灝嗚澶勭悊鎵鎶ュ憡寮傚父鐨勫眰銆俉eb 灞傞氬父鏄敱鎵ц涓氬姟浠誨姟鐨勬渶緇堢敤鎴烽┍鍔ㄧ殑錛屾墍浠ユ渶濂界敤瀹冨鐞嗕笟鍔$駭寮傚父銆備絾鏄紝鍦?EJB 灞傦紝鎮ㄦ鍦ㄦ墽琛岀郴緇熺駭浠誨姟錛屽浣跨敤 JNDI 鎴栨暟鎹簱銆傚敖綆¤繖浜涗換鍔℃渶緇堝皢琚悎騫跺埌涓氬姟閫昏緫涓紝浣嗘槸鏈濂界敤璇稿 RemoteException 涔嬬被鐨勭郴緇熺駭寮傚父鏉ヨ〃紺哄畠浠?br />
鐞嗚涓婏紝鎮ㄥ彲浠ヨ鎵鏈?Web 灞傛柟娉曢鏈熷鐞嗗拰鍝嶅簲鍗曚釜搴旂敤紼嬪簭寮傚父錛屾濡傛垜浠湪鍏堝墠鐨勪竴浜涚ず渚嬩腑鎵鍋氱殑涓鏍楓備絾榪欑鏂規硶涓嶉傜敤浜庨暱鏃墮棿榪愯銆傝鎮ㄧ殑濮旀淳鏂規硶鎶涘嚭鏇村叿浣撶殑寮傚父錛岃繖鏄竴涓ソ寰楀鐨勫紓甯稿鐞嗘柟妗堬紝浠庢牴鏈笂璁詫紝榪欏鎺ユ敹瀹㈡埛鏈烘洿鏈夌敤銆傚湪榪欑瘒鎶宸ф枃绔犱腑錛屾垜浠皢璁ㄨ涓ょ鎶鏈紝瀹冧滑灝嗘湁鍔╀簬鎮ㄥ垱寤轟俊鎭洿涓板瘜銆佹洿鍏蜂綋鐨勫紓甯革紝鑰屼笉浼氱敓鎴愬ぇ閲忎笉蹇呰鐨勪唬鐮併?br />
宓屽鐨勫紓甯?/b>
鍦ㄨ璁″彲闈犵殑寮傚父澶勭悊鏂規鏃訛紝瑕佽冭檻鐨勭涓浠朵簨鎯呭氨鏄鎵璋撶殑浣庣駭鎴栫郴緇熺駭寮傚父榪涜鎶借薄鍖栥傝繖浜涙牳蹇?Java 寮傚父閫氬父浼氭姤鍛婄綉緇滄祦閲忎腑鐨勯敊璇丣NDI 鎴?RMI 闂錛屾垨鑰呮槸搴旂敤紼嬪簭涓殑鍏跺畠鎶鏈棶棰樸俁emoteException銆丒JBException 鍜?NamingException 鏄紒涓?Java 緙栫▼涓綆綰у紓甯哥殑甯歌渚嬪瓙銆?br />
榪欎簺寮傚父瀹屽叏娌℃湁浠諱綍鎰忎箟錛岀敱 Web 灞傜殑瀹㈡埛鏈烘帴鏀舵椂灝ゅ叾瀹規槗娣鋒穯銆傚鏋滃鎴鋒満璋冪敤 purchase() 騫舵帴鏀跺埌 NamingException錛岄偅涔堝畠鍦ㄨВ鍐寵繖涓紓甯告椂浼氫竴絳硅帿灞曘傚悓鏃訛紝搴旂敤紼嬪簭浠g爜鍙兘闇瑕佽闂繖浜涘紓甯鎬腑鐨勪俊鎭紝鍥犳涓嶈兘杞繪槗鍦版姏寮冩垨蹇界暐瀹冧滑銆?br />
絳旀鏄彁渚涗竴綾繪洿鏈夌敤鐨勫紓甯革紝瀹冭繕鍖呭惈浣庣駭寮傚父銆傛竻鍗?1 婕旂ず浜嗕竴涓笓涓鴻繖涓鐐硅璁$殑綆鍗?ApplicationException錛?br />
娓呭崟 1. 宓屽鐨勫紓甯?package com.ibm;
import java.io.PrintStream;
import java.io.PrintWriter;
public class ApplicationException extends Exception {
聽聽聽聽聽聽 /** A wrapped Throwable */
聽聽聽聽聽聽 protected Throwable cause;
聽聽聽聽聽聽 public ApplicationException() {
聽聽聽聽聽聽聽聽聽聽 super("Error occurred in application.");
聽聽聽聽聽聽 }
聽聽聽聽聽聽 public ApplicationException(String message)聽聽{
聽聽聽聽聽聽聽聽聽聽 super(message);
聽聽聽聽聽聽 }
聽聽聽聽聽聽 public ApplicationException(String message, Throwable cause)聽聽{
聽聽聽聽聽聽聽聽聽聽 super(message);
聽聽聽聽聽聽聽聽聽聽 this.cause = cause;
聽聽聽聽聽聽 }
聽聽聽聽聽聽 // Created to match the JDK 1.4 Throwable method.
聽聽聽聽聽聽 public Throwable initCause(Throwable cause)聽聽{
聽聽聽聽聽聽聽聽聽聽 this.cause = cause;
聽聽聽聽聽聽聽聽聽聽 return cause;
聽聽聽聽聽聽 }
聽聽聽聽聽聽 public String getMessage() {
聽聽聽聽聽聽聽聽聽聽 // Get this exception's message.
聽聽聽聽聽聽聽聽聽聽 String msg = super.getMessage();
聽聽聽聽聽聽聽聽聽聽 Throwable parent = this;
聽聽聽聽聽聽聽聽聽聽 Throwable child;
聽聽聽聽聽聽聽聽聽聽 // Look for nested exceptions.
聽聽聽聽聽聽聽聽聽聽 while((child = getNestedException(parent)) != null) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 // Get the child's message.
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 String msg2 = child.getMessage();
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 // If we found a message for the child exception,
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 // we append it.
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if (msg2 != null) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if (msg != null) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 msg += ": " + msg2;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 } else {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 msg = msg2;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 // Any nested ApplicationException will append its own
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 // children, so we need to break out of here.
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if (child instanceof ApplicationException) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 parent = child;
聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽 // Return the completed message.
聽聽聽聽聽聽聽聽聽聽 return msg;
聽聽聽聽聽聽 }
聽聽聽聽聽聽 public void printStackTrace() {
聽聽聽聽聽聽聽聽聽聽 // Print the stack trace for this exception.
聽聽聽聽聽聽聽聽聽聽 super.printStackTrace();
聽聽聽聽聽聽聽聽聽聽 Throwable parent = this;
聽聽聽聽聽聽聽聽聽聽 Throwable child;
聽聽聽聽聽聽聽聽聽聽 // Print the stack trace for each nested exception.
聽聽聽聽聽聽聽聽聽聽 while((child = getNestedException(parent)) != null) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if (child != null) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 System.err.print("Caused by: ");
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 child.printStackTrace();
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if (child instanceof ApplicationException) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 parent = child;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽 }
聽聽聽聽聽聽 public void printStackTrace(PrintStream s) {
聽聽聽聽聽聽聽聽聽聽 // Print the stack trace for this exception.
聽聽聽聽聽聽聽聽聽聽 super.printStackTrace(s);
聽聽聽聽聽聽聽聽聽聽 Throwable parent = this;
聽聽聽聽聽聽聽聽聽聽 Throwable child;
聽聽聽聽聽聽聽聽聽聽 // Print the stack trace for each nested exception.
聽聽聽聽聽聽聽聽聽聽 while((child = getNestedException(parent)) != null) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if (child != null) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 s.print("Caused by: ");
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 child.printStackTrace(s);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if (child instanceof ApplicationException) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 parent = child;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽 }
聽聽聽聽聽聽 public void printStackTrace(PrintWriter w) {
聽聽聽聽聽聽聽聽聽聽 // Print the stack trace for this exception.
聽聽聽聽聽聽聽聽聽聽 super.printStackTrace(w);
聽聽聽聽聽聽聽聽聽聽 Throwable parent = this;
聽聽聽聽聽聽聽聽聽聽 Throwable child;
聽聽聽聽聽聽聽聽聽聽 // Print the stack trace for each nested exception.
聽聽聽聽聽聽聽聽聽聽 while((child = getNestedException(parent)) != null) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if (child != null) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 w.print("Caused by: ");
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 child.printStackTrace(w);
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 if (child instanceof ApplicationException) {
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 break;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 parent = child;
聽聽聽聽聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽聽聽聽聽 }
聽聽聽聽聽聽 }
聽聽聽聽聽聽 public Throwable getCause()聽聽{
聽聽聽聽聽聽聽聽聽聽 return cause;
聽聽聽聽聽聽 }
}






娓呭崟 1 涓殑浠g爜寰堢畝鍗曪紱鎴戜滑宸茬粡綆鍗曞湴灝嗗涓紓甯糕滀覆鈥濆湪涓璧鳳紝浠ュ垱寤哄崟涓佸祵濂楃殑寮傚父銆備絾鏄紝鐪熸鐨勫ソ澶勫湪浜庡皢榪欑鎶鏈綔涓哄嚭鍙戠偣錛屼互鍒涘緩鐗瑰畾浜庡簲鐢ㄧ▼搴忕殑寮傚父灞傛緇撴瀯銆傚紓甯稿眰嬈$粨鏋勫皢鍏佽 EJB 瀹㈡埛鏈烘棦鎺ユ敹鐗瑰畾浜庝笟鍔$殑寮傚父涔熸帴鏀剁壒瀹氫簬緋葷粺鐨勪俊鎭紝鑰屼笉闇瑕佺紪鍐欏ぇ閲忛澶栦唬鐮併?br />
寮傚父灞傛緇撴瀯
寮傚父灞傛緇撴瀯搴旇浠庝竴浜涘崄鍒嗗仴澹屽張閫氱敤鐨勫紓甯稿叆鎵嬶紝濡?ApplicationException銆傚鏋滄偍灝嗛《綰у紓甯告悶寰楀お鍏蜂綋錛岄偅涔堝叾緇撴灉鏄偍浠婂悗灝嗕笉寰椾笉閲嶆柊鏋勯犲眰嬈$粨鏋勶紝浠ラ傚簲鏌愪簺杈冮氱敤鐨勬儏鍐點?br />
鍥犳錛岃鎴戜滑鍋囧畾鎮ㄧ殑搴旂敤紼嬪簭瑕佹眰 NoSuchBookException銆両nsufficientFundsException 鍜?SystemUnavailableException銆傛偍涓嶅繀鍒涘緩榪欎笁涓紓甯革紝璁╁畠浠戶鎵?ApplicationException錛岀劧鍚庡彧闇鎻愪緵鏋佸皯鍑犱釜蹇呴』鐨勬瀯閫犲櫒鏉ュ垱寤烘牸寮忓寲鐨勬秷鎭傛竻鍗?2 鏄綾誨紓甯稿眰嬈$粨鏋勭殑紺轟緥錛?br />
娓呭崟 2. 寮傚父灞傛緇撴瀯 package com.ibm.library;
import com.ibm.ApplicationException;
public class NoSuchBookException extends ApplicationException {
聽聽聽聽聽聽 public NoSuchBookException(String bookName, String libraryName) {
聽聽聽聽聽聽聽聽super("The book '" + bookName + "' was not found in the '" +
聽聽聽聽聽聽聽聽聽聽聽聽libraryName + "' library.");
聽聽聽聽}
}





褰撻渶瑕佺紪鍐欏ぇ閲忎笓鐢ㄥ紓甯告椂錛屽紓甯稿眰嬈$粨鏋勬瀬澶у湴綆鍖栦簡宸ヤ綔銆傚浜庝竴涓紓甯革紝涓烘瘡涓紓甯哥被娣誨姞涓涓垨涓や釜鏋勯犲櫒錛屾墍鑺辮垂鏃墮棿寰堝皯涓嶈秴榪囧嚑鍒嗛挓銆傛偍榪樼粡甯擱渶瑕佺粰榪欎簺鏇村叿浣撶殑寮傚父錛堣繖浜涘紓甯鎬篃鏄富搴旂敤紼嬪簭寮傚父鐨勫瓙綾伙級鎻愪緵瀛愮被錛屼互鎻愪緵鏇村叿浣撶殑寮傚父銆備緥濡傦紝鎮ㄥ彲鑳介渶瑕?InvalidTitleException 鍜?BackorderedException 鏉ョ戶鎵?NoSuchBookException銆?br />
浼佷笟搴旂敤紼嬪簭鍦ㄦ瀯寤烘椂閫氬父閮戒笉浼氭敞鎰忓紓甯稿鐞嗐傚敖綆′緷闈犱綆綰у紓甯革紙濡?RemoteException 鍜?NamingException錛夊緢瀹規槗錛堟湁鏃朵篃寰堣浜猴級錛屼絾濡傛灉涓寮濮嬪氨寤虹珛涓涓彲闈犵殑銆佹繁鎬濈啛铏戠殑寮傚父妯″瀷錛屽垯鎮ㄥ皢鍦ㄥ簲鐢ㄧ▼搴忎笂灝戣姳寰堝綺懼姏銆傚垱寤轟竴涓祵濂楃殑銆佸眰嬈$粨鏋勫寲鐨勫紓甯告鏋跺皢鏀硅繘浠g爜鐨勫彲璇繪у強鍏跺彲鐢ㄦс?br />

鍏充簬浣滆?br />Brett McLaughlin 浠?Logo 鏃朵唬錛堣繕璁板緱閭d釜灝忎笁瑙掑悧錛燂級灝卞紑濮嬩粠浜嬭綆楁満宸ヤ綔浜嗐備粬鐜板湪涓撻棬鐮旂┒鐢?Java 鍜?Java 鐩稿叧鎶鏈瀯寤哄簲鐢ㄧ▼搴忓熀紜緇撴瀯銆傝繃鍘誨嚑騫翠粬涓鐩村湪 Nextel Communications 鍜?Allegiance Telecom, Inc. 鑷村姏浜庡疄鐜拌繖浜涘熀紜緇撴瀯銆侭rett 鏄?Java Apache 欏圭洰 Turbine 鐨勫叡鍚屽垱濮嬩漢涔嬩竴錛岃欏圭洰涓轟嬌鐢?Java servlet 鐨?Web 搴旂敤紼嬪簭寮鍙戞瀯寤哄彲閲嶇敤鐨勭粍浠朵綋緋葷粨鏋勩備粬榪樻槸 EJBoss 欏圭洰錛堜竴涓紑鏀炬簮鐮?EJB 搴旂敤紼嬪簭鏈嶅姟鍣級鍜?Cocoon錛堜竴涓紑鏀炬簮鐮?XML Web 鍙戝竷寮曟搸錛夌殑蹇楁効寮鍙戜漢鍛樹箣涓銆傚彲閫氳繃 brett@oreilly.com 涓?Brett 鑱旂郴銆?


cpsing 2006-12-06 11:03 鍙戣〃璇勮
]]>Java寮傚父澶勭悊鎶鏈?ZThttp://www.tkk7.com/cpsing/articles/85777.htmlcpsingcpsingWed, 06 Dec 2006 03:01:00 GMThttp://www.tkk7.com/cpsing/articles/85777.htmlhttp://www.tkk7.com/cpsing/comments/85777.htmlhttp://www.tkk7.com/cpsing/articles/85777.html#Feedback0http://www.tkk7.com/cpsing/comments/commentRss/85777.htmlhttp://www.tkk7.com/cpsing/services/trackbacks/85777.html

鍏寮傚父澶勭悊鐨勯檵涔?/font>

浣犺寰楄嚜宸辨槸涓涓狫ava涓撳鍚楋紵鏄惁鑲畾鑷繁宸茬粡鍏ㄩ潰鎺屾彙浜咼ava鐨勫紓甯稿鐞嗘満鍒訛紵鍦ㄤ笅闈㈣繖孌典唬鐮佷腑錛屼綘鑳藉榪呴熸壘鍑哄紓甯稿鐞嗙殑鍏釜闂鍚楋紵

1 OutputStreamWriter out = ...
2 java.sql.Connection conn = ...
3 try { // 鈶?
4 銆Statement stat = conn.createStatement();
5 銆ResultSet rs = stat.executeQuery(
6 銆銆"select uid, name from user");
7 銆while (rs.next())
8 銆{
9 銆銆out.println("ID錛? + rs.getString("uid") // 鈶?
10 銆銆銆"錛屽鍚嶏細" + rs.getString("name"));
11 銆}
12 銆conn.close(); // 鈶?
13 銆out.close();
14 }
15 catch(Exception ex) // 鈶?
16 {
17 銆ex.printStackTrace(); //鈶達紝鈶?
18 }


銆銆浣滀負涓涓狫ava紼嬪簭鍛橈紝浣犺嚦灝戝簲璇ヨ兘澶熸壘鍑轟袱涓棶棰樸備絾鏄紝濡傛灉浣犱笉鑳芥壘鍑哄叏閮ㄥ叚涓棶棰橈紝璇風戶緇槄璇繪湰鏂囥?

銆銆鏈枃璁ㄨ鐨勪笉鏄疛ava寮傚父澶勭悊鐨勪竴鑸у師鍒欙紝鍥犱負榪欎簺鍘熷垯宸茬粡琚ぇ澶氭暟浜虹啛鐭ャ傛垜浠鍋氱殑鏄垎鏋愬悇縐嶅彲縐頒負鈥滃弽渚嬧濓紙anti-pattern錛夌殑榪濊儗浼樼緙栫爜瑙勮寖鐨勫父瑙佸潖涔犳儻錛屽府鍔╄鑰呯啛鎮夎繖浜涘吀鍨嬬殑鍙嶉潰渚嬪瓙錛屼粠鑰岃兘澶熷湪瀹為檯宸ヤ綔涓晱閿愬湴瀵熻鍜岄伩鍏嶈繖浜涢棶棰樸?

銆銆鍙嶄緥涔嬩竴錛氫涪寮冨紓甯?

銆銆浠g爜錛?5琛?18琛屻?

銆銆榪欐浠g爜鎹曡幏浜嗗紓甯稿嵈涓嶄綔浠諱綍澶勭悊錛屽彲浠ョ畻寰椾笂Java緙栫▼涓殑鏉鎵嬨備粠闂鍑虹幇鐨勯綣佺▼搴﹀拰紲稿紼嬪害鏉ョ湅錛屽畠涔熻鍙互鍜孋/C++紼嬪簭鐨勪竴涓伓鍚嶈繙鎾殑闂鐩告彁騫惰??涓嶆鏌ョ紦鍐插尯鏄惁宸叉弧銆傚鏋滀綘鐪嬪埌浜嗚繖縐嶄涪寮冿紙鑰屼笉鏄姏鍑猴級寮傚父鐨勬儏鍐碉紝鍙互鐧懼垎涔嬩節鍗佷節鍦拌偗瀹氫唬鐮佸瓨鍦ㄩ棶棰橈紙鍦ㄦ瀬灝戞暟鎯呭喌涓嬶紝榪欐浠g爜鏈夊瓨鍦ㄧ殑鐞嗙敱錛屼絾鏈濂藉姞涓婂畬鏁寸殑娉ㄩ噴錛屼互鍏嶅紩璧峰埆浜鴻瑙o級銆?

銆銆榪欐浠g爜鐨勯敊璇湪浜庯紝寮傚父錛堝嚑涔庯級鎬繪槸鎰忓懗鐫鏌愪簺浜嬫儏涓嶅鍔蹭簡錛屾垨鑰呰鑷沖皯鍙戠敓浜嗘煇浜涗笉瀵誨父鐨勪簨鎯咃紝鎴戜滑涓嶅簲璇ュ紼嬪簭鍙戝嚭鐨勬眰鏁戜俊鍙蜂繚鎸佹矇榛樺拰鏃犲姩浜庤》銆傝皟鐢ㄤ竴涓媝rintStackTrace綆椾笉涓娾滃鐞嗗紓甯糕濄備笉閿欙紝璋冪敤printStackTrace瀵硅皟璇曠▼搴忔湁甯姪錛屼絾紼嬪簭璋冭瘯闃舵緇撴潫涔嬪悗錛宲rintStackTrace灝變笉搴斿啀鍦ㄥ紓甯稿鐞嗘ā鍧椾腑鎷呰礋涓昏璐d換浜嗐?

銆銆涓㈠純寮傚父鐨勬儏褰㈤潪甯告櫘閬嶃傛墦寮JDK鐨凾hreadDeath綾葷殑鏂囨。錛屽彲浠ョ湅鍒頒笅闈㈣繖孌佃鏄庯細鈥滅壒鍒湴錛岃櫧鐒跺嚭鐜癟hreadDeath鏄竴縐嶁樻甯哥殑鎯呭艦鈥欙紝浣員hreadDeath綾繪槸Error鑰屼笉鏄疎xception鐨勫瓙綾伙紝鍥犱負璁稿搴旂敤浼氭崟鑾鋒墍鏈夌殑Exception鐒跺悗涓㈠純瀹冧笉鍐嶇悊鐫傗濊繖孌佃瘽鐨勬剰鎬濇槸錛岃櫧鐒禩hreadDeath浠h〃鐨勬槸涓縐嶆櫘閫氱殑闂錛屼絾閴翠簬璁稿搴旂敤浼氳瘯鍥炬崟鑾鋒墍鏈夊紓甯哥劧鍚庝笉浜堜互閫傚綋鐨勫鐞嗭紝鎵浠DK鎶奣hreadDeath瀹氫箟鎴愪簡Error鐨勫瓙綾伙紝鍥犱負Error綾諱唬琛ㄧ殑鏄竴鑸殑搴旂敤涓嶅簲璇ュ幓鎹曡幏鐨勪弗閲嶉棶棰樸傚彲瑙侊紝涓㈠純寮傚父榪欎竴鍧忎範鎯槸濡傛甯歌錛屽畠鐢氳嚦宸茬粡褰卞搷鍒頒簡Java鏈韓鐨勮璁°?

銆銆閭d箞錛屽簲璇ユ庢牱鏀規鍛紵涓昏鏈夊洓涓夋嫨錛?

銆銆1銆佸鐞嗗紓甯搞傞拡瀵硅寮傚父閲囧彇涓浜涜鍔紝渚嬪淇闂銆佹彁閱掓煇涓漢鎴栬繘琛屽叾浠栦竴浜涘鐞嗭紝瑕佹牴鎹叿浣撶殑鎯呭艦紜畾搴旇閲囧彇鐨勫姩浣溿傚啀嬈¤鏄庯紝璋冪敤printStackTrace綆椾笉涓婂凡緇忊滃鐞嗗ソ浜嗗紓甯糕濄?

銆銆2銆侀噸鏂版姏鍑哄紓甯搞傚鐞嗗紓甯哥殑浠g爜鍦ㄥ垎鏋愬紓甯鎬箣鍚庯紝璁や負鑷繁涓嶈兘澶勭悊瀹冿紝閲嶆柊鎶涘嚭寮傚父涔熶笉澶變負涓縐嶉夋嫨銆?

銆銆3銆佹妸璇ュ紓甯歌漿鎹㈡垚鍙︿竴縐嶅紓甯搞傚ぇ澶氭暟鎯呭喌涓嬶紝榪欐槸鎸囨妸涓涓綆綰х殑寮傚父杞崲鎴愬簲鐢ㄧ駭鐨勫紓甯革紙鍏跺惈涔夋洿瀹規槗琚敤鎴蜂簡瑙g殑寮傚父錛夈?

銆銆4銆佷笉瑕佹崟鑾峰紓甯搞?

銆銆緇撹涓錛氭棦鐒舵崟鑾蜂簡寮傚父錛屽氨瑕佸瀹冭繘琛岄傚綋鐨勫鐞嗐備笉瑕佹崟鑾峰紓甯鎬箣鍚庡張鎶婂畠涓㈠純錛屼笉浜堢悊鐫?

銆銆鍙嶄緥涔嬩簩錛氫笉鎸囧畾鍏蜂綋鐨勫紓甯?

銆銆浠g爜錛?5琛屻?

銆銆璁稿鏃跺欎漢浠細琚繖鏍蜂竴縐嶁滅編濡欑殑鈥濇兂娉曞惛寮曪細鐢ㄤ竴涓猚atch璇彞鎹曡幏鎵鏈夌殑寮傚父銆傛渶甯歌鐨勬儏褰㈠氨鏄嬌鐢╟atch(Exception ex)璇彞銆備絾瀹為檯涓婏紝鍦ㄧ粷澶у鏁版儏鍐典笅錛岃繖縐嶅仛娉曚笉鍊煎緱鎻愬°備負浠涔堝憿錛?

銆銆瑕佺悊瑙e叾鍘熷洜錛屾垜浠繀欏誨洖欏句竴涓媍atch璇彞鐨勭敤閫斻俢atch璇彞琛ㄧず鎴戜滑棰勬湡浼氬嚭鐜版煇縐嶅紓甯革紝鑰屼笖甯屾湜鑳藉澶勭悊璇ュ紓甯搞傚紓甯哥被鐨勪綔鐢ㄥ氨鏄憡璇塉ava緙栬瘧鍣ㄦ垜浠兂瑕佸鐞嗙殑鏄摢涓縐嶅紓甯搞傜敱浜庣粷澶у鏁板紓甯擱兘鐩存帴鎴栭棿鎺ヤ粠java.lang.Exception媧劇敓錛宑atch(Exception ex)灝辯浉褰撲簬璇存垜浠兂瑕佸鐞嗗嚑涔庢墍鏈夌殑寮傚父銆?

銆銆鍐嶆潵鐪嬬湅鍓嶉潰鐨勪唬鐮佷緥瀛愩傛垜浠湡姝f兂瑕佹崟鑾風殑寮傚父鏄粈涔堝憿錛熸渶鏄庢樉鐨勪竴涓槸SQLException錛岃繖鏄疛DBC鎿嶄綔涓父瑙佺殑寮傚父銆傚彟涓涓彲鑳界殑寮傚父鏄疘OException錛屽洜涓哄畠瑕佹搷浣淥utputStreamWriter銆傛樉鐒訛紝鍦ㄥ悓涓涓猚atch鍧椾腑澶勭悊榪欎袱縐嶆埅鐒朵笉鍚岀殑寮傚父鏄笉鍚堥傜殑銆傚鏋滅敤涓や釜catch鍧楀垎鍒崟鑾稴QLException鍜孖OException灝辮濂藉浜嗐傝繖灝辨槸璇達紝catch璇彞搴斿綋灝介噺鎸囧畾鍏蜂綋鐨勫紓甯哥被鍨嬶紝鑰屼笉搴旇鎸囧畾娑電洊鑼冨洿澶箍鐨凟xception綾匯?

銆銆鍙︿竴鏂歸潰錛岄櫎浜嗚繖涓や釜鐗瑰畾鐨勫紓甯革紝榪樻湁鍏朵粬璁稿寮傚父涔熷彲鑳藉嚭鐜般備緥濡傦紝濡傛灉鐢變簬鏌愮鍘熷洜錛宔xecuteQuery榪斿洖浜唍ull錛岃鎬庝箞鍔烇紵絳旀鏄瀹冧滑緇х畫鎶涘嚭錛屽嵆涓嶅繀鎹曡幏涔熶笉蹇呭鐞嗐傚疄闄呬笂錛屾垜浠笉鑳戒篃涓嶅簲璇ュ幓鎹曡幏鍙兘鍑虹幇鐨勬墍鏈夊紓甯革紝紼嬪簭鐨勫叾浠栧湴鏂硅繕鏈夋崟鑾峰紓甯哥殑鏈轟細??鐩磋嚦鏈鍚庣敱JVM澶勭悊銆?

銆銆緇撹浜岋細鍦╟atch璇彞涓敖鍙兘鎸囧畾鍏蜂綋鐨勫紓甯哥被鍨嬶紝蹇呰鏃朵嬌鐢ㄥ涓猚atch銆備笉瑕佽瘯鍥懼鐞嗘墍鏈夊彲鑳藉嚭鐜扮殑寮傚父銆?

銆銆鍙嶄緥涔嬩笁錛氬崰鐢ㄨ祫婧愪笉閲婃斁

銆銆浠g爜錛?琛?14琛屻?

銆銆寮傚父鏀瑰彉浜嗙▼搴忔甯哥殑鎵ц嫻佺▼銆傝繖涓亾鐞嗚櫧鐒剁畝鍗曪紝鍗村父甯歌浜轟滑蹇借銆傚鏋滅▼搴忕敤鍒頒簡鏂囦歡銆丼ocket銆丣DBC榪炴帴涔嬬被鐨勮祫婧愶紝鍗充嬌閬囧埌浜嗗紓甯革紝涔熻姝g‘閲婃斁鍗犵敤鐨勮祫婧愩備負姝わ紝Java鎻愪緵浜嗕竴涓畝鍖栬繖綾繪搷浣滅殑鍏抽敭璇峟inally銆?

銆銆finally鏄牱濂戒笢瑗匡細涓嶇鏄惁鍑虹幇浜嗗紓甯革紝Finally淇濊瘉鍦╰ry/catch/finally鍧楃粨鏉熶箣鍓嶏紝鎵ц娓呯悊浠誨姟鐨勪唬鐮佹繪槸鏈夋満浼氭墽琛屻傞仐鎲劇殑鏄湁浜涗漢鍗翠笉涔犳儻浣跨敤finally銆?

銆銆褰撶劧錛岀紪鍐檉inally鍧楀簲褰撳鍔犲皬蹇冿紝鐗瑰埆鏄娉ㄦ剰鍦╢inally鍧椾箣鍐呮姏鍑虹殑寮傚父??榪欐槸鎵ц娓呯悊浠誨姟鐨勬渶鍚庢満浼氾紝灝介噺涓嶈鍐嶆湁闅句互澶勭悊鐨勯敊璇?

銆銆緇撹涓夛細淇濊瘉鎵鏈夎祫婧愰兘琚紜噴鏀俱傚厖鍒嗚繍鐢╢inally鍏抽敭璇嶃?/font>

鍙嶄緥涔嬪洓錛氫笉璇存槑寮傚父鐨勮緇嗕俊鎭?

銆銆浠g爜錛?琛?18琛屻?

銆銆浠旂粏瑙傚療榪欐浠g爜錛氬鏋滃驚鐜唴閮ㄥ嚭鐜頒簡寮傚父錛屼細鍙戠敓浠涔堜簨鎯咃紵鎴戜滑鍙互寰楀埌瓚沖鐨勪俊鎭垽鏂驚鐜唴閮ㄥ嚭閿欑殑鍘熷洜鍚楋紵涓嶈兘銆傛垜浠彧鑳界煡閬撳綋鍓嶆鍦ㄥ鐞嗙殑綾誨彂鐢熶簡鏌愮閿欒錛屼絾鍗翠笉鑳借幏寰椾換浣曚俊鎭垽鏂鑷村綋鍓嶉敊璇殑鍘熷洜銆?

銆銆printStackTrace鐨勫爢鏍堣窡韙姛鑳芥樉紺哄嚭紼嬪簭榪愯鍒板綋鍓嶇被鐨勬墽琛屾祦紼嬶紝浣嗗彧鎻愪緵浜嗕竴浜涙渶鍩烘湰鐨勪俊鎭紝鏈兘璇存槑瀹為檯瀵艱嚧閿欒鐨勫師鍥狅紝鍚屾椂涔熶笉鏄撹В璇匯?

銆銆鍥犳錛屽湪鍑虹幇寮傚父鏃訛紝鏈濂借兘澶熸彁渚涗竴浜涙枃瀛椾俊鎭紝渚嬪褰撳墠姝e湪鎵ц鐨勭被銆佹柟娉曞拰鍏朵粬鐘舵佷俊鎭紝鍖呮嫭浠ヤ竴縐嶆洿閫傚悎闃呰鐨勬柟寮忔暣鐞嗗拰緇勭粐printStackTrace鎻愪緵鐨勪俊鎭?

銆銆緇撹鍥涳細鍦ㄥ紓甯稿鐞嗘ā鍧椾腑鎻愪緵閫傞噺鐨勯敊璇師鍥犱俊鎭紝緇勭粐閿欒淇℃伅浣垮叾鏄撲簬鐞嗚В鍜岄槄璇匯?

銆銆鍙嶄緥涔嬩簲錛氳繃浜庡簽澶х殑try鍧?

銆銆浠g爜錛?琛?14琛屻?

銆銆緇忓父鍙互鐪嬪埌鏈変漢鎶婂ぇ閲忕殑浠g爜鏀懼叆鍗曚釜try鍧楋紝瀹為檯涓婅繖涓嶆槸濂戒範鎯傝繖縐嶇幇璞′箣鎵浠ュ父瑙侊紝鍘熷洜灝卞湪浜庢湁浜涗漢鍥劇渷浜嬶紝涓嶆効鑺辨椂闂村垎鏋愪竴澶у潡浠g爜涓摢鍑犺浠g爜浼氭姏鍑哄紓甯搞佸紓甯哥殑鍏蜂綋綾誨瀷鏄粈涔堛傛妸澶ч噺鐨勮鍙ヨ鍏ュ崟涓法澶х殑try鍧楀氨璞℃槸鍑洪棬鏃呮父鏃舵妸鎵鏈夋棩甯哥敤鍝佸鍏ヤ竴涓ぇ綆卞瓙錛岃櫧鐒朵笢瑗挎槸甯︿笂浜嗭紝浣嗚鎵懼嚭鏉ュ彲涓嶅鏄撱?

銆銆涓浜涙柊鎵嬪父甯告妸澶ч噺鐨勪唬鐮佹斁鍏ュ崟涓猼ry鍧楋紝鐒跺悗鍐嶅湪catch璇彞涓0鏄嶦xception錛岃屼笉鏄垎紱誨悇涓彲鑳藉嚭鐜板紓甯哥殑孌佃惤騫跺垎鍒崟鑾峰叾寮傚父銆傝繖縐嶅仛娉曚負鍒嗘瀽紼嬪簭鎶涘嚭寮傚父鐨勫師鍥犲甫鏉ヤ簡鍥伴毦錛屽洜涓轟竴澶ф浠g爜涓湁澶鐨勫湴鏂瑰彲鑳芥姏鍑篍xception銆?

銆銆緇撹浜旓細灝介噺鍑忓皬try鍧楃殑浣撶Н銆?

銆銆鍙嶄緥涔嬪叚錛氳緭鍑烘暟鎹笉瀹屾暣

銆銆浠g爜錛?琛?11琛屻?

銆銆涓嶅畬鏁寸殑鏁版嵁鏄疛ava紼嬪簭鐨勯殣褰㈡潃鎵嬨備粩緇嗚瀵熻繖孌典唬鐮侊紝鑰冭檻涓涓嬪鏋滃驚鐜殑涓棿鎶涘嚭浜嗗紓甯革紝浼氬彂鐢熶粈涔堜簨鎯呫傚驚鐜殑鎵ц褰撶劧鏄琚墦鏂殑錛屽叾嬈★紝catch鍧椾細鎵ц??灝辮繖浜涳紝鍐嶄篃娌℃湁鍏朵粬鍔ㄤ綔浜嗐傚凡緇忚緭鍑虹殑鏁版嵁鎬庝箞鍔烇紵浣跨敤榪欎簺鏁版嵁鐨勪漢鎴栬澶囧皢鏀跺埌涓浠戒笉瀹屾暣鐨勶紙鍥犺屼篃鏄敊璇殑錛夋暟鎹紝鍗村緱涓嶅埌浠諱綍鏈夊叧榪欎喚鏁版嵁鏄惁瀹屾暣鐨勬彁紺恒傚浜庢湁浜涚郴緇熸潵璇達紝鏁版嵁涓嶅畬鏁村彲鑳芥瘮緋葷粺鍋滄榪愯甯︽潵鏇村ぇ鐨勬崯澶便?

銆銆杈冧負鐞嗘兂鐨勫緗姙娉曟槸鍚戣緭鍑鴻澶囧啓涓浜涗俊鎭紝澹版槑鏁版嵁鐨勪笉瀹屾暣鎬э紱鍙︿竴縐嶅彲鑳芥湁鏁堢殑鍔炴硶鏄紝鍏堢紦鍐茶杈撳嚭鐨勬暟鎹紝鍑嗗濂藉叏閮ㄦ暟鎹箣鍚庡啀涓嬈℃ц緭鍑恒?

銆銆緇撹鍏細鍏ㄩ潰鑰冭檻鍙兘鍑虹幇鐨勫紓甯鎬互鍙婅繖浜涘紓甯稿鎵ц嫻佺▼鐨勫獎鍝嶃?

銆銆鏀瑰啓鍚庣殑浠g爜

銆銆鏍規嵁涓婇潰鐨勮璁猴紝涓嬮潰緇欏嚭鏀瑰啓鍚庣殑浠g爜銆備篃璁告湁浜轟細璇村畠紼嶅井鏈夌偣?鍡︼紝浣嗘槸瀹冩湁浜嗘瘮杈冨畬澶囩殑寮傚父澶勭悊鏈哄埗銆?

OutputStreamWriter out = ...
java.sql.Connection conn = ...
try {
銆Statement stat = conn.createStatement();
銆ResultSet rs = stat.executeQuery(
銆銆"select uid, name from user");
銆while (rs.next())
銆{
銆銆out.println("ID錛? + rs.getString("uid") + "錛屽鍚? " + rs.getString("name"));
銆}
}
catch(SQLException sqlex)
{
銆out.println("璀﹀憡錛氭暟鎹笉瀹屾暣");
銆throw new ApplicationException("璇誨彇鏁版嵁鏃跺嚭鐜癝QL閿欒", sqlex);
}
catch(IOException ioex)
{
銆throw new ApplicationException("鍐欏叆鏁版嵁鏃跺嚭鐜癐O閿欒", ioex);
}
finally
{
銆if (conn != null) {
銆銆try {
銆銆銆conn.close();
銆銆}
銆銆catch(SQLException sqlex2)
銆銆{
銆銆銆System.err(this.getClass().getName() + ".mymethod - 涓嶈兘鍏抽棴鏁版嵁搴撹繛鎺? " + sqlex2.toString());
銆銆}
銆}

銆if (out != null) {
銆銆try {
銆銆銆out.close();
銆銆}
銆銆catch(IOException ioex2)
銆銆{
銆銆銆System.err(this.getClass().getName() + ".mymethod - 涓嶈兘鍏抽棴杈撳嚭鏂囦歡" + ioex2.toString());
銆銆}
銆}
}

銆銆鏈枃鐨勭粨璁轟笉鏄斁涔嬪洓嫻風殕鍑嗙殑鏁欐潯錛屾湁鏃跺父璇嗗拰緇忛獙鎵嶆槸鏈濂界殑鑰佸笀銆傚鏋滀綘瀵硅嚜宸辯殑鍋氭硶娌℃湁鐧懼垎涔嬬櫨鐨勪俊蹇冿紝鍔″繀鍔犱笂璇︾粏銆佸叏闈㈢殑娉ㄩ噴銆?

銆銆鍙︿竴鏂歸潰錛屼笉瑕佺瑧璇濊繖浜涢敊璇紝涓嶅Θ闂棶浣犺嚜宸辨槸鍚︾湡鍦板交搴曟憜鑴變簡榪欎簺鍧忎範鎯傚嵆浣挎渶鏈夌粡楠岀殑紼嬪簭鍛樺伓灝斾篃浼氳鍏ユ閫旓紝鍘熷洜寰堢畝鍗曪紝鍥犱負瀹冧滑紜‘瀹炲疄甯︽潵浜嗏滄柟渚庫濄傛墍鏈夎繖浜涘弽渚嬮兘鍙互鐪嬩綔Java緙栫▼涓栫晫鐨勬伓欖旓紝瀹冧滑緹庝附鍔ㄤ漢錛屾棤瀛斾笉鍏ワ紝鏃跺埢璇辨儜鐫浣犮備篃璁告湁浜轟細璁や負榪欎簺閮藉睘浜庨浮鐨挏姣涚殑灝忎簨錛屼笉瓚蟲寕榻匡紝浣嗚璁頒綇錛氬嬁浠ユ伓灝忚屼負涔嬶紝鍕夸互鍠勫皬鑰屼笉涓恒?


cpsing 2006-12-06 11:01 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 国产青草视频免费观看97 | 亚洲精品成人片在线观看精品字幕| 亚洲AV无码国产精品色| 最近免费2019中文字幕大全| 亚洲成人免费在线| 免费无遮挡无码永久视频 | 亚洲国产欧美日韩精品一区二区三区| 又黄又爽又成人免费视频| 亚洲国产日韩在线成人蜜芽| 无码中文在线二区免费| 亚洲精品中文字幕| 亚洲av成人一区二区三区在线观看| 黄色网址大全免费| 国产亚洲一区二区精品| 91视频免费网址| 亚洲xxxx视频| 亚洲成a人无码av波多野按摩| 一区二区三区免费视频网站| 亚洲不卡av不卡一区二区| 91免费人成网站在线观看18| 亚洲精品无码久久久久APP| 亚洲国产香蕉人人爽成AV片久久| 99久久精品毛片免费播放| 亚洲国产成人手机在线电影bd| 午夜一级毛片免费视频| caoporn国产精品免费| 亚洲综合男人的天堂色婷婷| 热久久精品免费视频| 中文字幕在线免费视频| 亚洲国产精品乱码在线观看97 | 一级毛片免费视频网站| 亚洲视频中文字幕| 最好免费观看韩国+日本| 国产日韩精品无码区免费专区国产 | 又粗又长又爽又长黄免费视频| 久久久无码精品亚洲日韩蜜桃| 一二三四视频在线观看中文版免费| 国产一区二区三区亚洲综合| 亚洲国产成人私人影院| 美女黄网站人色视频免费国产 | avtt亚洲天堂|