第一章 容错机制 >

容错

第一章 容错机制
以国内最流行ASP为例,我不知道有多少人会在写代码时想到“容错”这个概念,实际上当我遇到这种事时,也是不了了之。为什么呢,想想最初的意思是认为写如下代码就能容错了,见示例1-1。

<%@ Language=VBScript %>

<%option explicit%>

<%

'出错过滤

on error resume next

……………(代码略)

%>

示例1-1 常见代码一瞥

以上代码就经常出现在各位同仁的手中,不用说出个中原因,我完成能理解各位现在的心情,我可以向大家坦白地说,我写了二年的ASP网页,大多数都是这种方式,不断的写,不断的改,心力交瘁,现在都不愿回头改写自已的代码了。实际上最基本的容错机制的想法,就是不要相信程序能为你节省多少事,要把控制权掌握在自已的手中,这是必要的。

<%@ Language=VBScript %>

<%Option Explicit%>

<%

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

DIM NDEBUG_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 (objSQL)

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

objConn.CommitTrans

Response.CacheControl ="Private"

Response.Expires = -1

……………(代码略)

Else

'~~~~~ Rollback transactions and close objects

objConn.RollbackTrans

'~~~~~ Raise errors for asp page

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

'Err.Clear

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

End If

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

%>

示例1-2 完整的容错机制代码范例

看了以上代码,你会发现也没有什么高超技艺在里面,高手可能更是不屑一顾。但大家未必能在写代码时这样作。

【1-1】编写动态网页时,一定要考虑容错机制,如在ASP中,就应该参考示例1-2,写出健壮的代码。

时间: 2024-11-03 23:31:56

第一章 容错机制 &gt;的相关文章

第一章 容错机制 &amp;lt;&amp;lt;高质量动态网页技术编程指南(草稿)&amp;gt;&amp;gt;

第一章 容错机制 以国内最流行ASP为例,我不知道有多少人会在写代码时想到"容错"这个概念,实际上当我遇到这种事时,也是不了了之.为什么呢,想想最初的意思是认为写如下代码就能容错了,见示例1-1. <%@ Language=VBScript %><%option explicit%><%'出错过滤on error resume next-----(代码略)%> 示例1-1 常见代码一瞥以上代码就经常出现在各位同仁的手中,不用说出个中原因,我完成能理解

第一章 C#简介(rainbow 翻译) (转自重粒子空间)

<展现 C#> 第一章 C#简介(rainbow 翻译)   出处:http://www.informit.com/matter/ser0000001/chapter1/ch01.shtml 正文: 展现   C#  第一章                      C#    简介 欢迎您加入C#的世界! 这一章将把您引进C#的天地,并回答一些相关的问题,如:您为什么要使用C#,C++和C#的主要有什么不同点,以及为什么C#使开发更容易而且还使您感到很有趣.为什么是另外一种编程语言?必须回答

《.net编程先锋C#》第一章 C#简介(转)

编程 第一章 C# 简介 欢迎您加入C#的世界! 这一章将把您引进C#的天地,并回答一些相关的问题,如:您为什么要使用C#,C++和C#的主要有什么不同点,以及为什么C#使开发更容易而且还使您感到很有趣.为什么是另外一种编程语言? 必须回答的一个问题:当您已经使用C++或VB从事企业开发时,为什么还要学习另一种语言? 市场式的回答就是:"在企业计算领域,C#将会变成为用于编写"下一代窗口服务"(Next Generation Windows Services,简写为NGWS

Programming Microsoft Office 2000 Web Components第一章

web 译者说明:<Programming Microsoft Office 2000 Web Components>是我从网上下载的一本讲述OWC技术的英文电子书,之所以要翻译这本书,是基于以下几个想法:1.阅读英文资料时常常会不求甚解,忽略很多细节和不容易阅读的句子,如果强迫自己逐句的翻译出来,则会对原来的英文资料有更加全面.详细和深刻的了解.2.可以锻炼自己在英语方面的能力.3.能够给其他需要这方面的资料的朋友提供一定的帮助. 这是本人初次进行这方面的工作,本人的技术和英文能力都很一般,

《.net编程先锋C#》第一章 C#简介

编程 第一章 C# 简介 欢迎您加入C#的世界! 这一章将把您引进C#的天地,并回答一些相关的问题,如:您为什么要使用C#,C++和C#的主要有什么不同点,以及为什么C#使开发更容易而且还使您感到很有趣.为什么是另外一种编程语言? 必须回答的一个问题:当您已经使用C++或VB从事企业开发时,为什么还要学习另一种语言? 市场式的回答就是:"在企业计算领域,C#将会变成为用于编写"下一代窗口服务"(Next Generation Windows Services,简写为NGWS

第一章、操作系统基本简介

第一章.操作系统基本简介 1.1 操作系统的目标和作用 操作系统目标 方便性 有效性:提供系统资源利用率:提高系统吞吐量. 可扩充性 开发性 操作系统的作用 作为用户与计算机硬件系统之间的接口 作为计算机系统资源的管理者 实现了对计算机资源的抽象 操作系统的主要工作 执行程序 为用户提供良好的界面 管理整个系统的各种资源 计算机系统的效率和安全问题 1.2 操作系统的发展过程 总括 未配置操作系统的计算机系统--->单道批处理系统-->多道批处理系统-->分时系统-->实时系统--

Android群英传笔记——第一章:Android体系与系统架构

Android群英传笔记--第一章:Android体系与系统架构 图片都是摘抄自网络 今天确实挺忙的,不过把第一章的笔记做一下还是可以的,嘿嘿 1.1 Google的生态圈 还是得从Android的起源说起,Android是一个以Linux为基础的开源移动设备操作系统,主要用于智能手机和平板电脑,由Google成立的Open Handset Alliance(OHA,开放手持设备联盟)持续领导与开发中.Android已发布的最新版本为Android 6.0.1(M). Android系统最初由安

Storm入门之第一章

原书下载地址 译者:吴京润   编辑:方腾飞 译者注:本文翻译自<Getting Started With Storm>,本书中所有Storm相关术语都用斜体英文表示. 这些术语的字面意义翻译如下,由于这个工具的名字叫Storm,这些术语一律按照气象名词解释 spout 龙卷,读取原始数据为bolt提供数据 bolt 雷电,从spout或其它bolt接收数据,并处理数据,处理结果可作为其它bolt的数据源或最终结果 nimbus 雨云,主节点的守护进程,负责为工作节点分发任务. 下面的术语跟气

第一章 Solidity源文件的结构

第一章 Solidity源文件的结构 源文件可以包含任意数量的智能合约的定义以及任意数量的include指令和pragma伪指令. 版本声明 版本声明代码格式如下: pragma solidity ^0.4.0; 这段代码的声明表示,源文件不会被0.4.0以下版本的编译器编译.当然同时也不会被0.5.0以上版本的编译器起作用(这是由^符号来决定的). 0.4.0 ~ 0.4.9 这些版本支持上面代码声明的源码编译,这样处理的好处是,如果0.4.0编译器有问题,可以随时修复bug,将其调整为0.4