聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 鍐欎唬鐮佺殑鏃跺欏簲璇ユ椂鏃惰冭檻浠ヤ笂鍑犵偣錛屽悗鏈熻冭檻鐨勮瘽寰堝鏄撴妸浠g爜鏀歸敊錛岃涔憋紝閫犳垚榪涘害涓婄殑绱у紶錛屾墍浠ュ己鐑堝緩璁啓浠g爜鏃跺欐敞鎰忋?/p>
1.1 鐢?/SPAN>log.error琛ㄧず緋葷粺綰ч敊璇?/SPAN>
1.2 鐢?/SPAN>log.warn琛ㄧず搴旂敤綰ч敊璇?/SPAN>
1.3 鏈嶅姟鍒濆鍖栨垨緇撴潫鐢?/SPAN>log.info
1.4 鐢?/SPAN>log.debug鏇夸唬out錛?/SPAN>debug瑕佸垽鏂?/SPAN>isDebugEnable
1.5 鐢?/SPAN>log.warn("",e)鏇夸唬e.printstack
1.6 鐢?/SPAN>log4e鐢熸垚log鐩稿叧浠g爜
1.7 Log淇℃伅瑕佷繚璇佸彲璇繪э紝闇璁板綍鐜板満淇℃伅錛屽褰撳墠澶勭悊id絳?/SPAN>
2 exception
2.1 try catch鍐呯殑浠g爜涓嶈澶暱
2.2 鍥犱負(fù)鎬ц兘鍘熷洜錛?/SPAN>try catch灝戞斁寰幆鍐?/SPAN>
2.3 灝介噺閬垮厤catch(Exception)榪欐牱鐨勫啓娉?/SPAN>
2.4 涓嶅悓妯″潡瀹氫箟涓嶅悓鐨?/SPAN>exception
2.5 寤鴻鍒涘緩搴旂敤鐨勫熀綾?/SPAN>exception錛岀壒鍒槸鏈夊畾涔?/SPAN>error code闇瑕佺殑搴旂敤
2.6 鍙catch灝辮log error message
2.7 catch騫跺皝瑁呮垚鍙︿竴縐?/SPAN>exception錛屽鏋滀笉nest鍘熸潵鐨?/SPAN>exception灝辮log stackTrace
2.8 鎸佷箙灞?/SPAN>throw dataAccessException錛屼笟鍔″眰throw checked exception錛屽睍鐜板眰鍙樉紺?/SPAN>exception淇℃伅
2.9 瑙勮寖鐨?/SPAN>exception嫻佺▼瀹氫箟濡備笅錛?/SPAN>
涓氬姟灞備笉闇澶勭悊鐨?/SPAN>runtime exception錛岀敱灞曠幇灞傚畾涔夌殑exception controller鎹曡幏錛屼氦緇欑浉搴旂殑error欏甸潰鏄劇ず騫惰褰?/SPAN>stack淇℃伅銆備笟鍔″眰鎹曡幏涓嬪眰鐨?/SPAN>exception錛屽茍灝佽鎴愪笟鍔″眰鐨?/SPAN>checked exception錛屽鏋?/SPAN>nest鎵鎹曡幏鐨?/SPAN>exception錛屽垯浠?/SPAN>log error message錛屽鏋滀笉nest灝遍渶瑕佺敤log.warn(鈥溾?e)璁板綍stack淇℃伅銆傚睍鐜板眰鎹曡幏涓氬姟灞傜殑exception錛屽簲鐢卞鐞嗕笟鍔″眰exception鐨?/SPAN>error欏甸潰鏉ュ鐞嗐?BR>
杞澆錛?A HREF="/pesome/archive/2006/01/20/28502.html#28814">http://www.tkk7.com/pesome/archive/2006/01/20/28502.html#28814
//register.cs
//閫氳繃涓涓彁浜や簨浠訛紝灝嗘帶浠跺間紶鍏ヤ笟鍔″眰
private void Submit_ServerClick(object sender, System.EventArgs e)
{
UserInfo user=new UserInfo();
user.AddUser(this.UserName.Value,this.PasswordR.Value,this.Email.Value,this.Homepage.Value,
this.show_face.Src);
//UserInfo.cs
public void AddUser(string username,string passwords,string email,
string homepage,string face)
{
Database data = new Database();
OleDbParameter[] prams={
data.MakeInParam("@username",OleDbType.VarChar,16),
data.MakeInParam("@passwords",OleDbType.VarChar,12),
data.MakeInParam("@email",OleDbType.VarChar,50),
data.MakeInParam("@homepage",OleDbType.VarChar,50),
data.MakeInParam("@face",OleDbType.VarChar,50)
};
//SQL璇彞
strcmd="insert into Users(username,passwords,email,homepage,face) values (@username, @passwords, @email, @homepage, @face)";
//灝嗕紶鍏ョ殑鍙傛暟鏀捐繘鏁扮粍閲?/SPAN>
string[] values={username,passwords, email, homepage, face};
//灝嗘暟鎹簱鐩稿搴旀瘡涓瓧孌電殑鍙橀噺鏀捐繘鏁扮粍
string[] datacolumn={"@username","@passwords", "@email", "@homepage", "@face"};
//璋冪敤鏁版嵁灞傜殑runCommand()鏂規(guī)硶
data.runCommand(strcmd,prams,datacolumn,values);
//Database.cs
//榪斿洖涓涓?/SPAN>OleDbParameter瀵硅薄
public OleDbParameter MakeInParam(string ParamName, OleDbType DbType,int size)
{
OleDbParameter param;
return param=new OleDbParameter(ParamName,DbType,size);
}
public void runCommand(string strcmd,OleDbParameter[] prams,string[] datacolumn,string[] values)
{
OleDbDataAdapter cmd = new OleDbDataAdapter(strcmd, conn);
this.Open();
if (prams != null)
{
//2涓驚鐜富瑕佹槸涓轟簡(jiǎn)鍒涘緩
// cmd.SelectCommand.Parameters.Add(new OleDbParameter ("@username",OleDbType.VarChar,16));
//璧嬪?/SPAN>
// cmd.SelectCommand.Parameters[@username].Value=username;
//鎴戣繖鏍瘋璁′富瑕佹槸涓轟簡(jiǎn)鑰冭檻濡傛灉浠ュ悗瑕佹坊鍔犳垨鍒犻櫎鐢ㄦ埛淇℃伅鐨勮瘽錛?/SPAN>
//鎴戝彧瑕佷慨鏀逛笟鍔″眰
foreach (OleDbParameter parameter in prams)
{
cmd.SelectCommand.Parameters.Add(parameter);
}
for(int i=0;i<values.Length;i++)
{
cmd.SelectCommand.Parameters[datacolumn[i]].Value=values[i];
}
}
cmd.SelectCommand.ExecuteNonQuery();
this.Close();
}
瀹屾垚欏圭洰鍚庯紝鎴戝彂鐜頒簡(jiǎn)寰堝闂錛岃瘯鐫鎯沖幓鏀癸紝鎬曠牬鍧忓師鏉ョ殑緇撴瀯錛屾葷殑鏉ヨ榪樻槸澶辮觸浜?jiǎn)锛屾垜鎬葷粨浜?jiǎn)浠ヤ笅缁忛獙鍜岄棶棰樺Q?BR>1.鍦ㄥ琛ㄦ搷浣滅殑鏃跺欏簲璇ヤ嬌鐢ㄥ瓨鍌ㄨ繃紼嬶紝鍥犱負(fù)鍙ュ瓙涓闀垮緢瀹規(guī)槗閿欙紝鑰屼笖璋冭瘯鍚庢墠鑳界煡閬撶粨鏋滐紝濡傛灉鏄瓨鍌ㄨ繃紼嬬殑璇濆彲浠ュ湪MSSQL涓獙璇佽鍙ユ槸鍚﹂敊璇傚綋鐒跺瓨鍌ㄨ繃紼嬭繕鏈夊叾浠栦紭鐐廣?BR>2.鐢↗S鑴氭湰楠岃瘉琛ㄥ崟銆傛垜瑙夊緱姣?NET鎻愪緵鐨勯獙璇佹帶浠舵柟渚垮浜?jiǎn)锛岃屼笖鏈湴楠岃瘉鍑忓皯緗戠粶浼犺緭涓繖鏍烽偅鏍風(fēng)殑闂銆?BR>3.鎴戞湁嬈″湪鍒漢鏈哄瓙涓婅皟璇曠殑鍑轟簡(jiǎn)闂錛氳佹槸鎶ワ細(xì)鈥滆鎿嶄綔涓嶆槸涓涓彲鏇存柊鐨勬搷浣溿傗濇垜閮侀椃浜?jiǎn)濂戒箙锛屾渶鍚庡湪鍒漢甯栧瓙浜?jiǎn)鎵惧堫C簡(jiǎn)絳旀錛屽師鏉ユ槸WINDOWS鏉冮檺闂錛岄偅鏈哄瓙鐢ㄧ殑鏄疻INDOWS2003銆?BR>4.鎴戣寰楄薄鎴戣繖鏍鋒櫘閫氱殑姣曚笟鐢燂紝杞歡宸ョ▼瀵規(guī)垜鏉ヨ澶負(fù)鑼簡(jiǎn)錛屾牴鏈氨娌℃硶杈懼埌鑷繁棰勬湡鐨勭悊鎯籌紝灝辯畻鏄垎鏋愭椂璁捐鍒扮殑鍔熻兘錛屼絾鍦ㄤ唬鐮佸疄鐜版椂琚嚜宸辮璁$殑妗嗘灦鑰屽崱浣忋傛墍浠ユ垜灝辨湁涓枒闂細(xì)鏄嬁鍒漢鐨勮璁′功鍐欏ソ錛岃繕鏄嚜宸辮璁¤嚜宸卞啓濂斤紵铏界劧鎴戞椂甯稿伔紿ユ煇浜鴻璁′功錛屼絾鏄粓涓嶅緱綺鵑珦銆傦紙灝卞儚鏈変簡(jiǎn)鍐呭姛鏂版硶紜己灝戝璺竴鏍鳳級(jí)
5.鎴掗獎(jiǎng)鎴掕簛銆傛垜瑙夊緱楠?jiǎng)鍌茬儲(chǔ)韬仒q欐槸緙栫▼澶у繉銆傛灄閿愬崥澹竴鏈功鍐欏埌浠栧悓瀛︾紪紼嬬殑鏃跺欙紝璇翠粬緙栫▼鐨勬椂鍊欑畝鐩翠笉鏄漢錛屽氨鏄釜鎸囬拡銆傚彲鑳借繖灝辨槸楂樻墜鍜屾櫘閫氫漢鐨勫尯鍒妸