毕业设计指导网:毕业设计范文、毕业答辩指导,免费毕业设计、计算机毕业论文参考资料下载服务。

技术团队主要成员为国内著名高校计算机专业导师。诚实守信,优质服务,是我们的宗旨!
当前位置:毕业设计指导网毕业论文频道通信

Win2000索引服务的WEB应用

论文出自毕业设计指导网www.bysj120.cn,需要购买整套毕业论文或找不到您要的毕业设计请联系客服索取

摘要在WWW上面有很多全文数据检索工具即搜索引擎(SearchEngine),如Yahoo、新浪、
网易等。微软公司在Win2000里提供了一个工具IndexServer,可以在自己的网站内部架设站
内的搜索引擎,即通过WebServer(IIS)与IndexServer的交互,建立自己的搜索引擎。
关键字Win2000IISIndexServerASPADO全文检索
1前言
在网络时代,通过输入关键字,就能查到自己感兴趣的资料,如果你制作了你自己网站,又想
提供站内的搜索功能,你就可以自己动手做一套属于你自己的站内搜索系统。Windows2000提供
了索引服务,缺省为未安装,通过在控制面板上的服务设置打开IndexServer服务以后,就等于
拥有了一套个人专属的搜索引擎。通过设置,大部分的时候都不需要人工干预,在预设的情况
下,系统负担较轻时,IndexServer就会找出系统指定的文件夹,一般是预设的WEB站点及预设
的FTP站点下所有的虚拟目录以及自己指定的硬盘上的文件夹,接着建立及维护存储文件的目录
信息。
当设置好IndexServer以后,在前端输入查询条件,IndexServer就会搜索这份索引,然
后以HTML的格式传回到前端,因为IndexServer事先会建立文件索引,搜索的速度将比全文
本的搜索快很多。

2IndexServer的对象和属性
2.1被索引的文件类型
在WEB服务器下的所有文件,IndexServer一般都会建立一份索引,这些文件有HTML文件、
ASP文件、HelpFile文件、文本文件以及Office软件制作的文件等,甚至可以是非文本的文件
类型,如可执行文件,当然,对这些文件无法通过有意义的文字来查询。
在实际运用中,我们一般关心的文件是文本类型文件,如网页等,基本上IndexServer也能
够满足一般的应用要求。
2.2IndexServer查询规则
(1)不区分大小写。
(2)如果包含特殊字符如双引号或者其他特殊字符如逗号,惊叹号等,必须要用双引号将字符
包含起来。
(3)多条件查询可以用逗号将关键字分开。
(4)支持布尔运算符,例如AND、OR、NOT、NEAR、<、>等等。
2.3IndexServer查询对象
在Windows2000中,IndexServer查询对象包含在Ixxso.dll之中,叫做IndexingService
ServerSideObject,即SSO,提供了建立及管理Recrodsets和查询的控制,利用SSO获得Index
Server建立的目录及文件索引,再用后端的描述语言VBScript或者javascript格式化传回前端。
SSO对象
Query对象

属性名称数据类型功能描述
AllowEnumerationBoolean是否允许递归搜索目录索引,缺省是False
CiScopeString指定搜索的路径,多于一个路径的话用逗号分开
ColumnsString从OLEDBRecordset取出的字段
MaxRecordsLong希望取得的记录数
QueryString查询限制条件
SortByString根据哪个字段排序

Query方法Method
方法功能描述
CreateRecordset建立ADORecordset,有sequential和nonsequential
DefineColumn给查询的字段定义一个别名
QueryToUrl转换为URL参数
SetQueryFromURL设定Query对象及相关内容

Utility对象
方法描述
AddScopeToQuery加入查询路径
HTMLEncode给指定的字符串按照HTML编码
URLEncode按照URL编码规则应用到给定的字符串

可用的文件信息
属性名称功能功能描述
Characterization文件的摘要
DocAuthor文件的作者
Rank排名
DocSubject文件的主题
DocTitle文件的标题
FileName文件名
Vpath文件的完整虚拟路径
Size文件大小(BYTE)

3分页检索部分源代码:<Response.Buffer=TrueMySelf=Request.ServerVariables("PATH_INFO")Page=CLng(Request("Page"))Path=Request("Path")Keyword=Request("Keyword")MaxRecords=CLng(Request("MaxRecords"))IfPage<=0ThenPage=1IfKeyword=EmptyThenKeyword="新华网湖南频道"IfMaxRecords<=0ThenMaxRecords=50Param="&Keyword="&Server.HTMLEncode(Keyword)Param=Param&"&Path="&Server.HTMLEncode(Path)Param=Param&"&MaxRecords="&MaxRecords><HTML><BODYbgcolor="#FFFFFF"Background="../B.jpg"><H2>IndexServer搜索引擎<HR></H2><FORMAction=<=Myself>METHOD=GET>关键字:<INPUTType=TextName=KeywordValue="<=Keyword>"><BR>路径:<INPUTType=TextNam=PathValue="<=Path>">(可省略,输入详细路径如/news/2001-10-18)<BR>最大文件数:<INPUTType=TextName=MaxRecordsValue="<=MaxRecords>"><BR><INPUTType=SubmitName=SendValue="搜索"></FORM><IfRequest("Send")<>EmptyOrRequest("Page")<>EmptyThenSetQ=Server.CreateObject("ixsso.Query")‘建立Query对象IfPath<>EmptyThenSetU=Server.CreateObject("ixsso.Util")‘建立Util对象U.AddScopeToQueryQ,Path,"deep"‘设置查询方式和路径EndIfQ.Query=Keyword‘关键字Q.SortBy="rank</A><AHREF=<=Myself>?Page=<=rs.PageCount><=Param>>最后一页</A><EndIf>输入页号:<INPUTTYPE=TEXTName=PageSIZE=3>页号:<FONTCOLOR="Red"><=Page>/<=rs.PageCount></FONT></FORM></P></DIV><EndIf><IfRequest("Msg")<>EmptyThen><HR><FONTColor=Red><=Request("Msg")></FONT><EndIf></BODY></HTML>
4小结通过运用indexsever对象属性,就可以达到站内搜索功能的很好效果,增加了网站的功能,不需要外部的搜索,提高了查找效率,方便了网站浏览,在网站的运行里面,该搜索系统表现良好,速度也很快,界面也很类似我们经常使用的互联网上一些著名的搜索引擎。参考文献微软公司http://www.microsoft.com清华大学出版社廖信彦著,ASP应用大全-ASP与数据库整合,2000年.

Tags:

  • 计算机毕业设计定做咨询