linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘网络学院网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 开发语言 > JAVA >
栏目导栏
  php
  JSP
  ASP
  asp.net
  JAVA
  c/c++/c#
  perl
  JavaScript
  Basic
  Delphi
资料搜索
热门文章
·Ajax实现在textbox中模糊查询显
·Ajax实现分页查询
·JAVA反编译工具jad的简单用法
·基于Spring+Hibernate+Eclip
·java定时执行的三种方法
·读取数码照片中的Exif信息
·JSP获取客户端的浏览器和操作系
·Java文件操作大全
·Java中利用通讯API编写短信软件
·JAVA技术:上传图片的缩放处理
·利用Java实现网页浏览器
·Java编程基础
·Java调用Oracle的过程和函数
·JAVA得到网卡物理地址(Windows
·NetBeans vs Eclipse之性能参数
最新文章
·实例解析:Linux操作系统下Jav
·JAVA得到网卡物理地址(Windows
·Ajax实现在textbox中模糊查询显
·Ajax简单示例之改变下拉框动态
·AJAX如何与后台交互
·Ajax实现分页查询
·Ajax核心:XMLHTTP组件相关技术
·面向Java程序员的Ajax:构建动态
·JSP获取客户端的浏览器和操作系
·提高Java技能的几种简单有效的
·敏捷开发中需掌握移除重复代码
·Java中利用通讯API编写短信软件
·关于String和StringBuffer
·用Java得到硬盘空间
·如何优化JAVA程序设计和编码,
Google
 
Ajax核心:XMLHTTP组件相关技术资料
[ 作者:  加入时间:2007-11-12 16:38:59  来自:Linux联盟收集整理 ]
一、数据库远程管理技术 kfeLinux联盟
   kfeLinux联盟
  基于互联网的广域网现代应用中的一个重要环节是数据库远程监控。首先简单回顾一下互联网上的数据库远程管理技术的发展过程和方式: kfeLinux联盟
   kfeLinux联盟
  早期通过编写CGI-BIN程序模块进行数据库远程管理。但CGI-BIN的运行速度慢,维护很不方便,现在已经基本被弃用。 kfeLinux联盟
   kfeLinux联盟
  这几年使用组件对象模型(Component Object Model, COM)的应用非常多,效果也很好。但如果使用的是第三方服务器(笔者的网站就是建立在第三方的虚拟主机上),服务器方往往因为保密或其它商业原因不允许用户注册自己的组件。 kfeLinux联盟
   kfeLinux联盟
  近年来由微软公司推出的.NET平台和SUN公司的J2EE平台都是非常高档的数据库远程管理与服务平台。都能提供优质的多层(n-Tier)应用服务。 其中,.NET的简单对象访问协议(Simple Object Access Protocol, SOAP)使用超文本传输协议(Hypertext Transfer Protocol, HTTP)和扩展标记语言(Extensible Markup Language, XML)技术实现跨系统(例如Windows - Linux)的通讯服务方式已经广为开发商接受和使用。许多大型应用,例如企业资源计划(Enterprise resource planning, ERP)等都建立在这样的大型平台之上。 但对于中小型应用,比如一个网站的建设和维护,这种大型应用平台就显得有些尾大不掉,开销也过于庞大。 kfeLinux联盟
   kfeLinux联盟
  曾经在互联网技术和Java技术方面一度落后的微软公司在XML应用开发则走在了前头。她的XML解析器(MSXML)中的XMLHTTP协议是一个非常方便实用的客户/服务通讯管道。综合运用XMLHTTP以及ActiveX数据对象(ActiveX Data Objects, ADO/ADOX)可以简单方便地实现数据库远程管理。 kfeLinux联盟
   kfeLinux联盟
  二、数据库远程管理体系 kfeLinux联盟
   kfeLinux联盟
  数据库远程管理的任务流程是: kfeLinux联盟
   kfeLinux联盟
  1、客户端向服务端发出数据库结构和数据的查询或修改指令。 kfeLinux联盟
   kfeLinux联盟
  2、服务端接受并执行有关指令并向客户端返回结果。 kfeLinux联盟
   kfeLinux联盟
  3、客户端接受并显示服务端返回的指令执行结果。 kfeLinux联盟
   kfeLinux联盟
  实现数据库远程管理的二个主要关键环节是: kfeLinux联盟
   kfeLinux联盟
  1、客户端与服务端之间的指令上传和结果下传的数据通道,由XMLHTTP协议实现。 kfeLinux联盟
   kfeLinux联盟
  2、服务端前沿与数据库之间的指令传送和结果返回,由起着中间层作用的ADO/ADOX接口完成。 kfeLinux联盟
   kfeLinux联盟
  三、XMLHTTP的使用 kfeLinux联盟
   kfeLinux联盟
  顾名思义,XMLHTTP是个传送XML格式数据的超文本传输协议。 kfeLinux联盟
   kfeLinux联盟
  实际上,XMLHTTP的数据传输过程更为灵活一些: kfeLinux联盟
   kfeLinux联盟
  它上传的指令可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。还可以是URL的参数。 kfeLinux联盟
   kfeLinux联盟
  它下达的结果可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。 kfeLinux联盟
   kfeLinux联盟
  详情可参阅文末链接。 kfeLinux联盟
   kfeLinux联盟
  客户端调用XMLHTTP的过程很简单,只有5个步骤: kfeLinux联盟
   kfeLinux联盟
  1、创建XMLHTTP对象 kfeLinux联盟
   kfeLinux联盟
  2、打开与服务端的连接,同时定义指令发送方式,服务网页(URL)和请求权限等。 kfeLinux联盟
   kfeLinux联盟
  客户端通过Open命令打开与服务端的服务网页的连接。与普通HTTP指令传送一样,可以用"GET"方法或"POST"方法指向服务端的服务网页。 kfeLinux联盟
   kfeLinux联盟
  3、发送指令。 kfeLinux联盟
   kfeLinux联盟
  4、等待并接收服务端返回的处理结果。 kfeLinux联盟
   kfeLinux联盟
  5、释放XMLHTTP对象 kfeLinux联盟
   kfeLinux联盟
  XMLHTTP方法 kfeLinux联盟
   kfeLinux联盟
  Open bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword kfeLinux联盟
   kfeLinux联盟
  bstrMethod:数据传送方式,即GET或POST。 kfeLinux联盟
   kfeLinux联盟
  bstrUrl:服务网页的URL。 kfeLinux联盟
   kfeLinux联盟
  varAsync:是否同步执行。缺省为True,即同步执行,但只能在DOM中实施同步执行。应用中一般将其置为False,即异步执行。 kfeLinux联盟
   kfeLinux联盟
  bstrUser:用户名,可省略。 kfeLinux联盟
   kfeLinux联盟
  bstrPassword:用户口令,可省略。 kfeLinux联盟
   kfeLinux联盟
  Send varBody kfeLinux联盟
   kfeLinux联盟
  varBody:指令集。可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。也可以省略,让指令通过Open方法的URL参数代入。 kfeLinux联盟
   kfeLinux联盟
  setRequestHeader bstrHeader, bstrValue kfeLinux联盟
   kfeLinux联盟
  bstrHeader:HTTP 头(header) kfeLinux联盟
   kfeLinux联盟
  bstrValue:HTTP 头(header)的值 kfeLinux联盟
   kfeLinux联盟
  如果Open方法定义为POST,可以定义表单方式上传xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" kfeLinux联盟
   kfeLinux联盟
  XMLHTTP属性 kfeLinux联盟
   kfeLinux联盟
  onreadystatechange:在同步执行方式下获得返回结果的事件句柄。只能在DOM中调用。 kfeLinux联盟
   kfeLinux联盟
  responseBody:结果返回为无符号整数数组。 kfeLinux联盟
   kfeLinux联盟
  responseStream:结果返回为IStream流。 kfeLinux联盟
   kfeLinux联盟
  responseText :结果返回为字符串。 kfeLinux联盟
   kfeLinux联盟
  responseXML:结果返回为XML格式数据。 kfeLinux联盟
   kfeLinux联盟
  下面是本文附件源程序中的一个应用示例: kfeLinux联盟
   kfeLinux联盟
  Function GetResult(urlStr) kfeLinux联盟
   kfeLinux联盟
  Dim xmlHttp kfeLinux联盟
   kfeLinux联盟
  Dim retStr kfeLinux联盟
   kfeLinux联盟
  Set xmlHttp = CreateObject("Msxml2.XMLHTTP") '创建对象 kfeLinux联盟
   kfeLinux联盟
  On Error Resume Next '出错处理 kfeLinux联盟
   kfeLinux联盟
  xmlHttp.Open "POST", urlStr, False '用POST方式打开连接,异步执行。 kfeLinux联盟
   kfeLinux联盟
  xmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" '上传表单 kfeLinux联盟
   kfeLinux联盟
  xmlHttp.Send '发送指令 kfeLinux联盟
   kfeLinux联盟
  If Err.Number = 0 Then '如果连接正确 kfeLinux联盟
   kfeLinux联盟
  retStr = xmlHttp.responseText '等待并获得服务端返回的结果字符串 kfeLinux联盟
   kfeLinux联盟
  Else kfeLinux联盟
   kfeLinux联盟
  retStr = "Url not found" '否则返回出错信息 kfeLinux联盟
   kfeLinux联盟
  End If kfeLinux联盟
   kfeLinux联盟
  Set xmlHttp = nothing '释放对象 kfeLinux联盟
   kfeLinux联盟
  GetResult = retStr '返回结果 kfeLinux联盟
   kfeLinux联盟
  End Function kfeLinux联盟
   kfeLinux联盟
  GetResult()函数带入一个服务网页的URL参数,把上传的指令安放在URL后面的参数上,如: kfeLinux联盟
   kfeLinux联盟
  urlStr = "server.asp?cmd=" & cmd & "&db=" & db & "table=" & table kfeLinux联盟
   kfeLinux联盟
  cmd:执行方式,例如查询,修改,删除等等。 kfeLinux联盟
   kfeLinux联盟
  db:服务端数据库名 kfeLinux联盟
   kfeLinux联盟
  table:服务端表名 kfeLinux联盟
   kfeLinux联盟
  然后提交指令,等待并接收返回的处理结果。结果以字符串方式返回。最后由函数调用者处理并显示结果。 kfeLinux联盟
   kfeLinux联盟
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
无相关信息