第一章 容錯機制 <<高質量動態網頁技術程式設計指南(草稿)>> (轉)

worldblog發表於2007-12-12
第一章 容錯機制 <> (轉)[@more@]

第一章  容錯機制:namespace prefix = o ns = "urn:schemas--com::office" />

  以國內最流行為例,我不知道有多少人會在寫程式碼時想到“容錯”這個概念,實際上當我遇到這種事時,也是不了了之。為什麼呢,想想最初的意思是認為寫如下程式碼就能容錯了,見示例1-1。

'出錯過濾

on error resume next

……………(程式碼略)

%>

示例1-1 常見程式碼一瞥

以上程式碼就經常出現在各位同仁的手中,不用說出箇中原因,我完成能理解各位現在的心情,我可以向大家坦白地說,我寫了二年的ASP網頁,大多數都是這種方式,不斷的寫,不斷的改,心力交瘁,現在都不願回頭改寫自已的程式碼了。實際上最基本的容錯機制的想法,就是不要相信能為你節省多少事,要把控制權掌握在自已的手中,這是必要的。

'========================================

DIM NDE_MSG

NDEBUG_MSG=TRUE

IF NDEBUG_MSG = TRUE THEN

'出錯過濾

ON ERROR RESUME NEXT

END IF

'===============END =====================

……………(程式碼略)

'資料事務處理-start

If Err.number = 0 Then

'~~~~~ Open database and begin transaction ~~~~~~~~~~~~~~~~~~~~

'------------------------------

'-------------------------------------

objConn.BeginTrans

objConn.Execute (obj)

'~~~~~~ Commit the transaction and close the database connection

objConn.CommitTrans

Response.CacheControl ="Private"

Response.Expires = -1

……………(程式碼略)

  Else

'~~~~~ Rollback transactions and close s

objConn.RollbackTrans

'~~~~~ Raise errors for asp page

'Err.Raise Err.Number, Err., Err.Description

'Err.Clear

Response.Write "Description= ("& err.number &"),("& err.Description &")"

End If

'===============END FILES=====================

%>

示例1-2 完整的容錯機制程式碼範例

看了以上程式碼,你會發現也沒有什麼高超技藝在裡面,高手可能更是不屑一顧。但大家未必能在寫程式碼時這樣作。

【1-1】編寫動態網頁時,一定要考慮容錯機制,如在ASP中,就應該參考示例1-2,寫出健壯的程式碼。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-991726/,如需轉載,請註明出處,否則將追究法律責任。

相關文章