asp jscript编程(3)

尽量按照面向对象编程的规则来写代码,感觉得心应手!而且JScript所具有的很多VBScript没有的特性使用非常方便!

下面是用JScript实现的一个conn类,使用try...catch...语法实现错误处理。

 

 

<SCRIPT RUNAT=SERVER LANGUAGE=JAVASCRIPT>
//Class Conn()
function Conn() {
 //private variables
 var db = 'data/data.mdb';
 var connStr = 'Provider = Microsoft.Jet.OLEDB.4.0;Data Source = ' + Server.mapPath(db);
 
 //public variables
 this.conn;
 
 //public function getConn()
 this.getConn = function() {
  try{
   this.conn = new ActiveXObject('ADODB.Connection');
   this.conn.open(connStr);
  }catch(exception){
   Response.write('<ol>');
   Response.write('<li>' + exception + '</li>');
   Response.write('<li>' + (exception.number & 0xFFFF) + '</li>');
   Response.write('<li>Microsoft Jet connection error</li>');
   //Response.write('<li>' + exception.description + '</li>');  //不打印错误信息,以防止报漏数据库地址
   Response.write('</ol>');
   //throw exception;  //不打印错误信息,以防止报漏数据库地址
   Response.end();   //停止执行,防止下面的错误发生
  }
 }

 //public function execute()
 this.execute = function(sqlStr) {
  try{
   return this.conn.execute(sqlStr);
  }catch(exception){
   Response.write('<ol>');
   Response.write('<li>' + exception + '</li>');
   Response.write('<li>' + (exception.number & 0xFFFF) + '</li>');
   Response.write('<li>' + exception.description + '</li>');
   Response.write('</ol>');
   Response.end();
  }
 }

 //public function close()
 this.close = function() {
  try{
   this.conn.close();
   this.conn = null;
  }catch(exception){
   Response.write('<ol>');
   Response.write('<li>' + exception + '</li>');
   Response.write('<li>' + (exception.number & 0xFFFF) + '</li>');
   Response.write('<li>' + exception.description + '</li>');
   Response.write('</ol>');
   Response.end();
  }
 }
}

//var conn = new Conn(); //建立新的Conn对象
//conn.getConn(); //当数据库路径错误是,打印定制的错误信息
//conn.execute('select * from test');//当路径正确,而没有test表时打印响应信息
//conn.close()

</SCRIPT>

去掉代码尾部注释掉的几行代码可以看到效果。

另外,其实代码实例也是很丰富的,网络上很多高手写的javascript客户端代码,简单修改之后就可以拿来作为服务器端代码,比如将客户端代码中的document.write改为asp的Response.write...

 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值