ASP中实现全面容错的途径

来源 :网络与信息 | 被引量 : 0次 | 上传用户:fcsleep
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  一种编程语言或软件开发工具的一个最重要的功能是能够提供正确处理错误的机制。
  在用ASP开发系统时,开发者常常产生如下认识上的误区:将任务交给一个程序员时,委托者认为任务中隐含着编写错误处理代码的工作;由于认识上的误区常常使系统的容错能力减弱。本文将从预防错误、处理错误和捕获错误三个方面阐述ASP中实现全面容错的途径。最后通过实例介绍错误处理的方法。
  
  1 实现全面容错的途径
  
  1.1 尽早处理错误
  出现错误后允许用户进行的每一步操作,对用户而言都是在浪费时间和精力。例如:当程序事实上已经不可能接收输入的信息了,如果程序给用户的是一个能够正常接收键盘输入信息的假象,用户将认为一切正常并继续输入,然后程序告知用户以前有一个错误,从那时开始是在浪费时间。无疑,用户是很难心平气和地面对这一现实的。
  尽早处理错误的要诀是在编码过程中遵循下列规则:
  * 预防所有可以预防和防止的错误。
  * 处理所有可以预料但不能防止的错误。
  * 捕获所有不能预料的错误。
  (1)预防错误。预防错误是容错代码中的重要环节。尽可能地预防错误,可以避免许多用于错误处理和捕获的工作,使容错代码迅速“瘦身”。此外,“防患于未然“,是用户最乐意接受的形式。
  (2)处理错误。就代码规模而言,处理错误的代码是容错代码中的主要组成部分。
  需要指出的是,处理错误意味着,当错误发生后,容错代码将智能性地按照某种逻辑对错误进行纠正,而不是简单地将控制引向错误发生前的位置。
  (3)捕获错误。捕获错误是容错代码中的常见形式。不可预料的错误可能引起系统崩溃,或造成某种灾难性的后果。而捕获错误是避免出现上述后果的唯一手段。因为错误捕获的对象是不可预料的错误,所以错误捕获代码不能对错误进行纠正,而只能恢复到某种状态。
  在实践中,错误捕获常常被过分强调和滥用。事实上,对用户而言,捕获到错误的信息通常会让他们产生挫折感。这里,笔者并不是贬低错误捕获的必要性和重要性,捕获错误是处理不可预料错误的唯一途径。但是,如果用捕获错误的方法来处理可以防止或处理的错误,就是滥用错误捕获。随着错误预防和错误处理机制的完善,捕获错误的工作量将减少(从理论上讲,不存在不可预料的错误,只存在由于学识方面的原因而不能预料的错误)。
  1.2 随时编写错误处理代码
  推迟处理错误往往会引发许多严重的后果。为程序“打补丁”时,程序员可能已经忘记了错误发生的原因和处理方法等方面的细节。更坏的情况是,当一个程序员为另一个程序员编写的程序“打补丁”时,还可能引入更多的错误。当用户由于程序错误而请求支持时,会怀疑程序的健壮性,这无疑会影响开发者的形象和进一步合作的前景。因此,在编写每一行功能性代码时,必须考虑是否需要容错以及如何容错。
  
  2 处理错误
  
  通过设置可以改变IIS采用的默认处理错误代码程序,但这也只能是提供更加友好、更容易理解的提示信息而已,并没有改变程序导致错误的事实。
  一般为了增强程序的容错能力,应自行编写代码检查错误,然后根据具体情况进行适当的处理。欲在ASP程序中加入处理错误代码,需要使用On Error语句。On Error的作用是开启错误陷阱,开启错误陷阱后,即可在可能出错的代码后加入错误处理代码段,以实现容错。下面以一个例子来说明。
  <SCRIPT LANGUAGE = VBScript RUNAT=Server>
  Option Explicit
  On Error ReSume Next
  此处用于定义变量,调用函数。
  Function Ssyyrr(X,Y)
  On error resume next
  Dim z
  Z=x/y
  Select Case Err.Number
  Case 0
  Ssyyrr=Z
  Exit Function
  Case Else
  Response.Write “错误代码:”&Err.Number&“<br>”
  Response.Write “错误描述:”&Err.Description&“<br>”
  Response.Write“错误对象或应用程序名称:”&Err.Source
  Response.End
  End Select
  End Function
  </SCRIPT>
  本例中用到了Err对象及其Number、Description、Source属性,借肋这些属性可获得与所发生错误有关的各种信息,进而可利用这些信息对错误进行处理。由本例可见利用Err对象各种属性获取错误信息是十分方便的。
  
  3 总结
  
  脆弱的容错能力是导致程序崩溃的根本原因。因此我们在开发系统时,掌握容错环节的设计原则、设计方法,使系统能预见、预防和处理各种错误,可有效地提高工作效率和系统的功能。
  
  参考文献
  [1]张景峰,苏英如,等.ASP程序设计教程.北京:中国水利水电出版社[M],2005.6.
  [2]冯昊.ASP动态网页设计与上机指导.北京:清华大学出版社[M],2002.12.
  [3]铁军.网点设计技术.北京:中央广播电视大学出版社[M],2004.3.
  
  作者简介:刘凤玲(1961-),女,辽宁抚顺人,抚顺职业技术学院副教授。
其他文献
1. 用杀毒软件保护电脑,及时更新软件  一定要确保你的电脑安装了杀毒软件!杀毒软件可以保护你的电脑,使你不用担心受到病毒的侵害。但是,新病毒每天都会出现,杀毒软件需要定期升级。病毒的发作就像每年的流感病毒一样,新的病毒和病毒变种不断产生,所以一定要保证有规律地升级杀毒软件!升级的越勤快,比如说每周一次,杀毒的效果就越好。请登录你使用的杀毒软件公司的网站,看看有没有发现新的病毒,并且定期对杀毒软件
期刊
小心、小心、再小心,但还是避免不了Excel文件被损坏,那你是将受损文件弃之不顾呢,还是想办法急救呢?如果属于后一种的话,你将从下面的内容中得到惊喜。    1.转换格式法  这种方法就是将受损的Excel工作簿重新保存,并将保存格式选为SYLK格式。一般情况下,大家要是可以打开受损的Excel文件,只是不能对文件进行各种编辑和打印操作的话,那么笔者建议大家首先尝试这种方法,来将受损的Excel工
期刊
精彩的大片当然要大家一起分享,上传到您的FTP空间中吧,方便朋友们下载和欣赏。但通常这些大片的体态“臃肿”,而FTP空间却是“有限”,久而久之,很有可能有被“撑破”的危险。您当然不希望这种情况发生在您的身上,那就对FTP空间的剩余数量进行监控吧。一旦出现空间不足的危险,立即给予警告提醒。恰恰Windows系统自带的“性能监控”功能就能做到,免去了使用第三方监控工具的麻烦。     第一步、启用“性
期刊
三棱锥相信大家都看过,旋转的三棱锥不知道大家看过没有,今天就带大家一起来做一下旋转的三棱锥,看看它是怎么旋转起来的,跟我一起来做吧。      1.首先启动Flash,新建一个影片,设置影片舞台大小为253px×205px(单位为像素),影片背景色为白色。  2.为了方便下面的制作,这里依次选择查看→网格→显示网格菜单命令,打开影片的捕捉网格功能。   3.选择工具箱中的直线工具,在舞台中绘制出三
期刊
相信很多人都是智能ABC的忠实粉丝,因此为大家介绍一些关于它的实用输入技巧,让你大大提高输入速度。   1.直接输入英文   如果在智能输入法中输入英文,只要在输入的英文字母前先输入“v”即可,如输入“teacher”,只需键入“vteacher”即可。   2.输入大写数字  要在智能ABC中输入大写的数字,如“一”、“二”、“三”或“壹”、“贰”、“叁”,需要使用的快捷键就是“i”和“I”键。
期刊
全新推出的快车(FlashGet)1.80正式版不仅整体文件下载性能得到了大大增强,而且其还集成了目前非常流行的BT下载及BT下载的相关功能,因此这款软件受到许多人的关注和喜爱,今天给大家介绍一些FlashGet的使用技巧,希望能给大家带来帮助。    1.自动播放下载的影音文件    自从快车(FlashGet)集成了BT下载功能后,许多精彩的影视节目和好听的歌曲等我们都可以放心地交给Flash
期刊
1 引言    在网络管理系统中,管理功能主要围绕着ISO定义的五大管理功能来设计,即网络配置管理、性能管理、安全管理、计费管理和差错管理。网络管理系统的开发目前已得到网络界的广泛重视,许多大公司相继推出了功能强大的网络管理平台,如Sun Net Manager, IBM Net View,HP Open View,Microsoft Systems Management Cisco Works等
期刊
2006年底,腾讯手机QQ产品经理参加了由友人网主办的手机软件体验访谈,在整个的访谈过程中,众网友纷纷提问,最关心的问题还是资费与更多手机系统版本支持。下面是整理的比较有价值的信息。  1.手机QQ将会免费提供服务   关于这个问题,很多用户在关心, 2006年12月31日也是与中国移动合作协议正式结束的日子,相信很多手机IM运营商都在看QQ的下一步的举措。在未来的资费上,该产品经理以十分肯定的语
期刊
灵活运用样式   熟悉网页设计的网友都知道,调用Style的方法很多,我们可以单击鼠标右键选择Custon Style来调用Style标准,也可以在状态栏中的元素列表上单击右键来调用Style。虽然不同的方法达到的效果看似一样,但实际上产生的HTML代码则完全不同。比如用Custon Style来调用Style标准,在网页代码中就生成一个〈span〉标签,这样的标签一多就会使文件十分臃肿而且影响浏
期刊
现在压缩软件很多,但是WinRAR以其小巧、实用赢得了大家的喜爱。不过,这个软件有很多的实用技巧。利用它们,可以让我们真正做到事半功倍。    1.制作自解压文件  如果你平时使用WinRAR来压缩文件,而你的朋友也不会使用WinRAR,但你的数据又确实必须压缩后才能够给他。这时,我们就可以把RAR压缩包制作成EXE文件。他只要执行生成后EXE文件即可解压。  (1)直接生成法  比如:我们要把“
期刊