admin 管理员组文章数量: 1086019
2024年3月20日发(作者:汇编语言实现大小写转换)
维普资讯
2009_年9月
湖南师范大学自然科学学报
Jota-Nat Scie Hunan Norm Uni
Vo1.25 N【ll3
第25卷第3期
Sep..2002_
基于Delphi 5核心技术的分布式
Web网站实现技术
王绍恒 ,王志刚
(1.重庆三峡学院计算机科学系,中国重庆404000;2.湖南师范大学理学院计算机系,中国长沙410081)
摘要:比较了几种主要的 eb了T发技术,介绍一种基于Delplif 5核心技术支持的分布式Web网站的开发方
法,并给出了运用Delplif 5的Web核心技术开发税法查询Web系统的一些细节.
关键词:分布式Web;XML;IntemetExpress
中图分类号:O171.7 文献标识码:A 文章编号:1000-2537(2002-)03—002-8—04
The Methods of Developing Distributed Web based on the Technologies of Delphi 5
WANG Shao-heng‘
,
WANG Zhig-ang
(1.Depamnent of Computer Science,Chongqing Tlu-ee Gorges College,Chongqing 4O40O0,Clifna;
2.Department of Computer,ciSence College,Hunan Normal University,Changsha 410081,Clifna)
Abstract:There are Several technologies of developing distributed Web,they will introduce new problems.Delphi 5
provides some new technologies for developing Web systems.By using them,we can developed a high quality Web SOla, el‘
and presented the methods of developing Web system with Delphi 5.
Key words:distributed Web;XML;IntemetExpress
1现有的Web实现技术
目前在Windows平台中用来开发Web和Intemet/Intranet应用程序的技术大致上是以ASP、VBSc ̄・ipt、
Java ̄ript和HTML/DHTML为主;使用这些技术来开发分布式Web网站应用程序有许多的问题,首先是必须
混合使用数种不同的技术.在客户端浏览器中必须使用HTML和VBScript/JavaScfipt脚本语言来处理用户在
浏览器中的动作,在Web服务器中则必须使用VB或者VC++建立ASP对象来处理浏览器的要求,此外ASP
对象还必须使用COM技术建立ADO对象来存取数据.但是一般来说为了效率的因素,通常必须在Web服务
器中使用VC++来开发ASP对象.由于必须混合使用数种技术,因此效率不高,此外以这种实现技术取得的
数据是静态的数据,如果需要开发能够更新数据的Web应用程序,还必须编写大量的ASP程序代码来更新
和处理数据. .
为了避免在开发分布式web网站时应用程序使用VC++,还必须使用大量的VBScript脚本语言.这样虽
然可以降低应用程序的复杂度,但是VBScript是没有效率的脚本语言,使用它编写一些简单的应用程序还可
以,但若用它开发实际的分布式Web网站应用系统,则应用程序执行效率很低.
2 Delphi 5提供的新技术
Delphi 5在Intemet/Inhnnet、web和电子商务部分提供了非常强劲的支持,它除了可以开发Web应用系统
收稿日期:2002—01—08
基金项目:湖南省青年骨干教师基金和重庆三峡学院重点科研基金资助项目
作者介绍:王绍恒(1961一),男,重庆人,副教授,主要从事计算机应用教学与研究
维普资讯
第3期 王绍恒等:基于Delplif 5核心技术的分布式Web网站实现技术
之外,还加入了XML协议.此外Delpl1i 5允许只使用Delphi便能够开发ASP对象、Web应用程序、MTS刘 象以
及使用ADOExpress组件存取数据库之中的数据.只需要使用Delphi便能够完成大部分的工作,而不需要同
时使用数种不同的语言和技术开发Web应用系统.因为Delphi 5使用了HTML 4.0,XML以及内嵌的J叭’aS—
cript脚本语言技术,从web应用程序、ASP对象到存取数据的ADO对象都可以使用Delphi 5完成,而且不论
是IE或是Netscape都可以正确地执行.
2.1 InternetExpress技术
IntemetExpl'ess组件是Delphi 5为支持Intemet/Intranet解决方案而提供的一个超前开发工具.IntemctEx—
Dl"ess只包含了 rXMLBmker和TMIDASPagePlxxtucer这两个组件,其中TxMLBmker组件可以从分布式Web网
站应用程序服务器或是MTS对象取得数据,j{ 将MIDAS封装的数据转换为XML格式.由于使用了XML格
式,因此这些数据库中的数据便可以和其它来源的数据(例如word,Excel或Oudook的数据)集成在一起.
TMIDASPagePIxxtUCel"从 rXMLBmker组件取得以XML封装的数据,再集成HTML/XML,或是用户使用其它
HTML编辑器设计的样版ITI ̄L主页,以及内嵌的JavaSeript脚本语言,进而汇整成一个有效的主页内容,最
后再传送给Web网站服务器,由Web网站服务器把结果主页内容送回客户端浏览器中.另外,TMID—
ASPagePlxxtuce・・组件还提供了一个可视化组件编辑器,可以像FrontPage一样用可视化的方式设计主页内容.
由于IntemetExpress组件只是把数据库中的数据以可视化的方法设计,再封装成HTML/XML的格式传递
给客户端浏览器中,它并不包含用户在客户端浏览器中和Web服务器之间通信的功能.但是分布式Web查
询系统中,用户一定会在客户端浏览器中执行一些动作,例如点击一个按钮查询数据等.
这些通信需要一种技术能够在Web网站应用程序中编写提供用户要求的服务程序码.在Delphi中除了
可以使用ASP之外,也可以使用WebBroker技术处理这个问题,ASP只能使用在Micmsoft的IIS Web服务器
中,Delphi的WebBroker技术却可以同时使用在IIS,Netscape服务器或者CGI服务器之中,而且Delphi 5还可
以使用可视化的方式来开发ASP对象.
IntemetExpress技术不是单独存在的,一个完整的分布式Web应用系统,需要同时使用IntemetExpress技
术以及WebBmker技术.通过IntemetExpress技术来封装XML的数据再通过WebBroker和客户端用户通信,查
询用户提出的要求并且满足客户端的需要.结合MIDAS应用程序服务器或MTS便可以提供一个大型、具得
高度扩展性的分布式Web网站.WebBroker是在第一线和用户通信的技术,通过WebBmkel・客户端用户提出
什么要求,以及客户端用户需要查询什么数据,或者更新了什么数据.WebBroker允许使用事件处理函数来处
理』兀户在客户端浏览器中提出的服务(见图1所示).
2.2 XML和分布式Web应用系统
XML(Extensible Markup L加gua )似乎是继HT—
ML之后又一个封装数据的标准.由于XML几乎能
够封装任何种类的数据,又逐渐成为交换数据的业
界标准,因此分布式Web网站应使用XML来封装
以及交换数据.
使用XML来封装数据不但可以在数据中封装
数据代表的意义,也可以和其它的XML数据来源
交换数据.由IntemetExpress设计的浏览器可视化
图形用户界面以及在Web服务器和浏览器之间交
IE/Netscape
换的数据都是以XML格式来封装的.因此由Delphi
图l WebBroker及IntemetExpress应.}千l示
开发的分布式Web网站可以轻易地和其它的开发工具或者应用程序交换数据.XML除了可以封装数据之
外,Micmsoft以及一些其它的厂商已经在提议使用XML来开发Intemet/Intranet或者Web应用系统.许多的数
据库厂商声明支持XML,因此现在XML已经在Intemet/Intranet、Web、数据库和中间件中占有了显著且重要的
地位.
2.3中间件和分布式web应用系统
用MqS构造的分布式Web网站应用系统是让Web服务器服务m 要求,让MTS对象负责执行逻辑程
序码,因此可以适当的分散分布式Web网站应用系统的工作负荷.又由于MTS提供了数据库连结Pooling,线
维普资讯
30 湖南师范大学自然科学学报 第25卷
程Pooling,甚至在COM+中提供了对象Pooling,因此可以有效的减少分布式web网站应用程序的执行效率.
更何况MTS/COM+能够提供负载平衡的功能,因此可以让使用这种结构的分布式web网站应用系统具有更
好的扩展性.
通常可以搭配ASP或是ISAPI/NSAPI的分布式Web网站应用程序和MTS一起开发多层的分布式Web
网站应用系统.在这种结构中,仍然应该只编写简单的ASP应用程序,这些ASP应用程序只是调用MTS对象
来执行企业逻辑程序码.因此这些ASP应用程序都非常的简洁,所以ASP脚本语言应用程序也不会成为这
种Web结构的执行瓶颈.
3分布式税法查询WEB系统简介
远程数据查询是计算机网络技术十分普及的一种应用.同时计算机网络技术与多媒体技术相结合,让用
户在一个轻松的环境下进行工作.分布式税法查询WEB系统为用户提供通过Intemet查询国家与地方税法
税规条文,主要功能包括标题查询、关键词查询、单项查询功能(如分别查询文件名、文号、文件发放时问、关
键词、文中含有关键字)、组合查询功能(对文件名、文号、文件发放时间、关键词、文中含有关键字几个条件
中满足两或两个以上或全部条件时进行查询)、模糊查询功能(对文件名、文号、文件发放时间、关键词、文中
含有关键字中所含任意条件进行查询).
分布式税法查询WEB系统包括两个主要部分:一是远程数据服务器,该数据服务器的功能主要是根据
EB应用程序的要求从数据库中读取适当的数据,并传送给WWEB应用程序;二是WEB应用程序,WEB应
用程序根据用户端浏览器的要求激活相应的action处理程序执行,生成H'I ̄L文件格式后再通过WEB服务
器发送到用户端浏览器,浏览器解释HTML后在用户终端上显示出相应的页面.鉴于篇幅有限,这里只给出
将税法条文标题数据集转换为超级链接HTML文件的action程序段TWebModule1.abc和用户点击某一标题
后查找全文并回送到用户的action程序段TWebModule1.readfile.
3.1程序段rI'、^ odule1.abc
procedure TWebModule1.abe(Sender:TObject;Request:TWebRequest;
Response:TWebResponse;val"Handld:Booleean);
function makesuperlink:stirng; //生成标题超级链接的子函数
begin
result:=’(A HREF=/shuifa2.dll/税法?wish=’+
quelyI.FieldByName(’sh’).AsString+’)’+
quelyI.FieldByName(’wj’).AsString+’(/A)’;
end;
val‘strl:string;
egbin
strl:= :
try
queryI.active ̄=true;
while not query1.Eof do
egibn
strl:=strl+’(P)’+makesuperlink+’</P)’;//制作标题主页
queiy1.Next;
end;
inal1f)r
query1.active::false;
end;
response.content:=strl; //将标题主页赋值给response,准备回送
维普资讯
第3期
handled:=true:
王绍恒等:基于Delphi 5核心技术的分布式Web网站实现技术 3
end;
3.2程序段TWebModule1.readt'lfe
procedure TWebModuleI.readfile(Sender:TObject;Request:TWebRequest;
Response:TWebResponse;var Handled:Boolean);
val‘shI:stl‘ing;
begin
shI:=request.queryfields.values[’wjsh’];//从request读取用户指定的文件序号
t1
quer) 1.active: true;
while(not query1.Eof)and(queryI.FieldByName(’sh’).As,Stirng()sh1)do
uerqyI.Next;
ifnally
//查找全文
//找到后生成HTML段 if not queryI.Eof then
response.content:=’(P)’+query1.FieldByName(’wjnr’).As,Stirng+’(/P)’else
response.content:=’(P)文件没找到!(/P)’;
quel3,1.active:=false;
end;
handled:=true;
end;
说明:queryI是通过可视化设计方法连到税法条文库的query控件.
4小结
运用Delphi 5开发Web的一部分工作可以在可视化环境下进行,本文不予描述的原因是需要的图片太
多,占篇幅太大,故省去.选择适当的分布式Web开发工具是成功的第一步,从以上的例子来看运用Delphi
5提供的技术对于提高工作效率是有很大帮助的,特别适合开发以动态数据库访问为主的分布式WEB网
站.
参考文献:
[1]李维.Delplif 5.x分布式多层应用系统篇[M].北京:机械工业出版社,2000.
[2]徐新华.Delphi 5高级编程.COM,CORBA和Intemet编程[M].北京:人民邮电出版社,2000.
[3]王志刚.基于MIDAS分布式多层系统的容错技术[J].湖南师范大学自然科学学报,2001,24(2):15.17
版权声明:本文标题:基于Delphi5核心技术的分布式Web网站实现技术 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1710888932a578121.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论