论文网首页|会计论文|管理论文|计算机论文|医药学|经济学论文|法学论文|社会学论文|文学论文|教育论文|理学论文|工学论文|艺术论文|哲学论文|文化论文|外语论文|论文格式
中国论文网

用户注册

设为首页

您现在的位置: 中国论文网 >> 计算机论文 >> 计算机理论论文 >> 正文 会员中心
 计算机应用论文   计算机理论论文   计算机网络论文   电子商务论文   软件工程论文   操作系统论文   通信技术论文
Win2000索引服务的WEB应用
  摘要 在www上面有很多全文数据检索工具即搜索引擎(search engine),如yahoo、新浪、
网易等。微软公司在win2000里提供了一个工具index server,可以在自己的网站内部架设站
内的搜索引擎,即通过web server(iis)与index server的交互,建立自己的搜索引擎。
关键字 win2000 iis index server asp ado 全文检索

1 前言
在网络时代,通过输入关键字,就能查到自己感兴趣的资料,如果你制作了你自己网站,又想
提供站内的搜索功能,你就可以自己动手做一套属于你自己的站内搜索系统。windows2000提供
了索引服务,缺省为未安装,通过在控制面板上的服务设置打开index server服务以后,就等于
拥有了一套个人专属的搜索引擎。 通过设置,大部分的时候都不需要人工干预, 在预设的情况
下,系统负担较轻时,index server就会找出系统指定的文件夹,一般是预设的web站点及预设
的ftp站点下所有的虚拟目录以及自己指定的硬盘上的文件夹,接着建立及维护存储文件的目录
信息。
当设置好index server以后,在前端输入查询条件,index server就会搜索这份索引,然
后以html的格式传回到前端,因为index server事先会建立文件索引, 搜索的速度将比全文
本的搜索快很多。WWw.11665.COm

2 index server的对象和属性
2.1 被索引的文件类型
在web服务器下的所有文件,index server一般都会建立一份索引,这些文件有html文件、
asp文件、help file文件、文本文件以及office软件制作的文件等,甚至可以是非文本的文件
类型,如可执行文件,当然,对这些文件无法通过有意义的文字来查询。
在实际运用中,我们一般关心的文件是文本类型文件,如网页等,基本上index server也能
够满足一般的应用要求。
2.2 index server查询规则
(1) 不区分大小写。
(2) 如果包含特殊字符如双引号或者其他特殊字符如逗号,惊叹号等,必须要用双引号将字符
包含起来。
(3) 多条件查询可以用逗号将关键字分开。
(4) 支持布尔运算符,例如and、or、not、near、<、>等等。
2.3 index server查询对象
在windows2000中,index server查询对象包含在ixxso.dll之中,叫做indexing service
server side object,即sso,提供了建立及管理recrodsets和查询的控制,利用sso获得index
server建立的目录及文件索引,再用后端的描述语言vbscript或者javascript格式化传回前端。
sso对象
query对象

属性名称 数据类型 功能描述
allowenumeration boolean 是否允许递归搜索目录索引,缺省是false
ciscope string 指定搜索的路径,多于一个路径的话用逗号分开
columns string 从ole db recordset取出的字段
maxrecords long 希望取得的记录数
query string 查询限制条件
sortby string 根据哪个字段排序

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 = true
myself = request.servervariables( "path_info" )
page = clng(request( "page" ))
path = request( "path" )
keyword = request( "keyword" )
maxrecords = clng( request( "maxrecords" ) )

if page <= 0 then page = 1
if keyword = empty then keyword = "新华网湖南频道"
if maxrecords <= 0 then maxrecords = 50
param = "&keyword=" & server.htmlencode(keyword)
param = param & "&path=" & server.htmlencode(path)
param = param & "&maxrecords=" & maxrecords
%>
<html><body bgcolor="#ffffff" background="../b.jpg"><h2>index server 搜索引擎<hr></h2>
<form action=<%=myself%> method=get>
关键字:<input type=text name=keyword value="<%=keyword%>"><br>
路 径:<input type=text name=path value="<%=path%>">
(可省略,输入详细路径如/news/2001-10-18)<br>
最大文件数:<input type=text name=maxrecords value="<%=maxrecords%>"><br>
<input type=submit name=send value=" 搜 索 ">
</form><%
if request ("send") <> empty or request ("page") <> empty then
set q = server.createobject ("ixsso. query") ‘建立query对象
if path <> empty then
set u = server.createobject ("ixsso. util") ‘建立util 对象
u.addscopetoquery q, path, "deep" ‘设置查询方式和路径
end if
q.query = keyword ‘关键字
q.sortby = "rank[d]" ‘排序方式
q.columns = "doctitle, characterization, rank, vpath, write, size" 需要的字段
q.maxrecords = maxrecords ‘最大纪录数
set rs = q.createrecordset("nonsequential") ‘建立记录集%>
<hr>
<blockquote><%
rs.pagesize = 5
if page < 1 then page = 1
if page > rs.pagecount then page = rs.pagecount
if page <= 0 then
msg = "搜索结果:没有找到任何符合条件的文件!"
msg = server.htmlencode( msg )
response.clear
response.redirect myself & "?msg=" & msg & param
end if
rs.absolutepage = page
for ipage = 1 to rs.pagesize
recno = (page - 1) * rs.pagesize + ipage
%>
<b><%=recno & ". "%><%=rs("doctitle")%></b><br>
<b>摘要:</b><%=rs("characterization")%><br>
<b>网址:</b><a href=<%=rs("vpath")%>><%=rs("vpath")%></a><br>
<b>时间: </b><%=rs("write")%><br>
<b>大小: </b><%=rs("size")%><p>
<% rs.movenext
if rs.eof then exit for
next
%></table></blockquote>
<div align=right><form action=<%=myself%> method=get><hr>
<%if page <> 1 then ' 如果不是位于第一页 %>
<a href=<%=myself%>?page=1<%=param%>>第一页</a>
<a href=<%=myself%>?page=<%=(page-1)%><%=param%>>上一页</a>
<%end if
if page <> rs.pagecount then ' 如果不是位于最后一页%>
<a href=<%=myself%>?page=<%=(page+1)%><%=param%>>下一页</a>
<a href=<%=myself%>?page=<%=rs.pagecount%><%=param%>>最后一页</a>
<%end if%>
输入页号:<input type=text name=page size=3>
页号:<font color="red"><%=page%>/<%=rs.pagecount%></font>
</form></p></div>
<%end if%>
<%if request("msg") <> empty then %>
<hr><font color=red><%=request("msg")%></font>
<%end if%></body></html>

4 小结
通过运用index sever对象属性,就可以达到站内搜索功能的很好效果,增加了网站的功能,不
需要外部的搜索,提高了查找效率,方便了网站浏览,在网站的运行里面,该搜索系统表现良好,速
度也很快,界面也很类似我们经常使用的互联网上一些著名的搜索引擎。
参考文献
微软公司
清华大
学出版社 廖信彦著,asp应用大全-asp与数据库整合,2000年.

  • 上一个计算机论文:
  • 下一个计算机论文:
  •  作者:未知 [标签: 索引 应用 ]
    姓 名: *
    E-mail:
    评 分: 1分 2分 3分 4分 5分
    评论内容:
    发表评论请遵守中国各项有关法律法规,评论内容只代表网友个人观点,与本网站立场无关。
    WiFi通信技术在钻井现场的应用
    论基于Intranet技术的计算机通信网络的即时
    Win8的“心”,Win7的“脸”
    Blue袭来—Win8的继任者?(下)
    Win8应用更轻松
    暑假在即,Win8也能玩转老游戏
    Win8 Style,《WPS Office 2013抢鲜版》初体
    最超值Win8平板 华硕 ME400C平板电脑
    操作更简单!详解Win8资源管理器
    碉堡了!Win8也玩Ubuntu 3D特效
    PC操作系统份额:Win XP首次跌破40% Win8仅
    玩转Win8
    | 设为首页 | 加入收藏 | 联系我们 | 网站地图 | 手机版 | 论文发表

    Copyright 2006-2013 © 毕业论文网 All rights reserved 

     [中国免费论文网]  版权所有