已阅读5页,还剩43页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 随着通用搜索引擎和多媒体信息快速的发展,图像搜索引擎成为国内外的 一个研究热点,文字信息的搜索已经不能满足人们的需求,人们对多媒体信息 的需求越来越迫切,其中最常用的就是图像,由此互联网图像搜索引擎应运而 生。 大型的搜索引擎数据量太大,结构太复杂,不太适合校园网,目前我们学校 的校园网搜索引擎功能有文件搜索、网页搜索等,但图像搜索这里还是一个空 缺,本课题研究和实现了校园网网页上图像信息的抓取、下载、索引和检索, 最终完成了一个简单而又较为完整的校园网图像搜索引擎系统。本课题讨论了 爬虫程序的抓取策略,通过对爬虫程序( s p i d e r ) 的改进,利用正则表达式、s q l 队列、定时器等相关技术,实现了对校园网图像及网页信息的抓取和下载,并 对干扰图像进行了过滤处理,同时对校园网外的网站进行了屏蔽。用i k a n a l y z e r 中文分词系统来实现中文分词,通过l u c e n e 的常用的一些a p i 实现了索引的建 立、增加和查询。采用j s p + t o m c a t 服务器的b s 架构来实现图像检索模块,并 取得了良好的效果。 关键词:搜索引擎;图像搜索;校园网;爬虫程序 a b s t r a c t a b s t r a c t a l o n gw i t hg e n e r a ls e a r c he n g i n ea n dt h er a p i dd e v e l o p m e n to fm u l t i m e d i a i n f o r m a t i o n ,i m a g es e a r c he n g i n eb e c o m e sah o t s p o ti nt h ew o r l d t h es e a r c h i n go f t e x t u a li n f o r m a t i o nh a sb e e nu n a b l et om e e tp e o p l e sn e e d s ,t h ep e o p l e sg r o w i n g d e m a n df o rm u l t i m e d i ai n f o r m a t i o nu r g e n c y ,w h i c hi st h em o s tc o m m o n l yu s e d i m a g e ,w h i c hc a m ei n t ob e i n gi n t e r n e ti m a g es e a r c he n g i n e l a r g e s c a l es e a r c he n g i n ed a t at o o t h es t r u c t u r ei st o oc o m p l e x 1 e s ss u i t a b l e c a m p u sn e t w o r k c u r r e n t l y0 1 1 1 s c h o o lc a m p u sn e t w o r ks e a r c he n g i n ef u n c t i o n d o c u m e n ts e a r c h 。w e bs e a r c h ,i m a g es e a r c hh e r eb u ts t i l lo n ev a c a n c y t h er e s e a r c h a n dt h er e a l i z a t i o no ft h ec a m p u sn e t w o r kp a g ei m a g ei n f o r m a t i o nc a p t u r e ,d o w n l o a d , i n d e x i n ga n dr e t r i e v a l ,a n du l t i m a t e l yc o m p l e t e das i m p l ea n dr e l a t i v e l yc o m p l e t e p i c t u r eo fc a m p u sn e t w o r ks e a r c he n g i n es y s t e m t h et o p i cd i s c u s st h es t r a t e g yo f s p i d e rp r o c e d u r e s ,t h r o u g ht h ei m p r o v e m e n t so fs p i d e rp r o c e d u r e ,u s i n gar e g u l a r e x p r e s s i o n , s q lq u e u e s ,t i m e r s ,a n do t h e rr e l a t e dt e c h n o l o g i e s ,r e a l i z et h ec r a w l i n g , a n a l y z i n ga n dd o w n l o a d i n go ft h ei m a g ei n f o r m a t i o nf r o mc a m p u sn e t w o r k n 圮 i n t e r f e r e n c ef i l t e rp r o c e s s i n go ft h ei m a g e ,a n ds h i e l dt h ew e b s i t eo u t s i d et h ec a m p u s n e t w o r ka tt h es a m et i m e w i t hi k a n a l y z e rc h i n e s ew o r ds e g m e n t a t i o ns y s t e mt o a c h i e v ec h i n e s ew o r ds e g m e n t a t i o n ,t h ec o m m o n l yu s e db ys o m el u c e n ea p ii n d e x r e a l i z e dt h ee s t a b l i s h m e n t , i n c r e a s i n g ,q u e r y j s pa n dt o m c a ts e r v e ru s i n gt h e b r o w s e r s e r v e rf r a m e w o r kt oa c h i e v ei m a g es e a r c hm o d u l e ,a n dh a v ea c h i e v e dg o o d r e s u l t s k e yw o r d s :s e a r c he n g i n e ;i m a g es e a r c h ;c a m p u sn e t w o r k ;s p i d e r i i 学位论文版权使用授权书 本人完全了解北京机械工业学院关于收集、保存、使用学位论文 的规定,同意如下各项内容:按照学校要求提交学位论文的印刷本和 电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、 缩印、扫描、数字化或其它手段保存论文;学校有权提供目录检索以 及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向 国家有关部门或者机构送交论文的复印件和电子版;在不以赢利为目 的的前提下,学校可以适当复制论文的部分或全部内容用于学术活 动。 学位论文作者签名:美函健 沁彩年溯舯 ( 注:非保密论文无需签字) 经指导教师同意,本学位论文属于保密,在年解密后适用 本授权书。 指导教师签名:学位论文作者签名: 年月e 1年月日 硕士学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行 研究工作所取得的成果。除文中已经注明引用的内容外,本学位论文 的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的 作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集 体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任 由本人承担。 第一章引言 1 1 图像搜索研究背景现状 第一章引言 互联网上的图像信息正在急剧膨胀,与此同时,用户对网上图像搜索的需 求也在不断增长,使各种基于w e b 的图像搜索引擎应运而生。它们各自以不同 的工作方式,使用户对网上图像信息的搜索变得非常简单,尽管还不很完美, 却已经可以满足用户的大多数要求。实际上,图像搜索已经成为目前国内外的 一个研究热点。以下为国内外研究较多的几种图像搜索方式: l 、基于文本的图像搜索 基于文本的图像搜索技术( t e x t - - b a s e di m a g er e t r i e v a l ,简称t bi r ) , 利用文本描述的方式表示图像的特征,这时的图像检索实际是文本检索,是基于 关键字的精确匹配检索,系统内的图像用关键字标识,检索线索是与标识相匹配 的关键字,即输入为关键字,输出为图像。在i n t e r n e t 上,现有的大多数图像搜 索引擎( 网站) 所采用的都是此种方式,如i n f o s e e k 和y a h o o 的i m a g e s u r f e r 、l y c o s 的p i c t u r e s s o u n d s 等。 2 、基于内容的图像搜索 为了克服基于文本的图像检索技术的局限性,出现了基于内容的图像搜索 ( c o n t e n t - - b a s e di m a g er e t r i e v a l ,简称c bi r ) ,即对图像的视觉内容,如图像 的颜色、纹理、形状等进行分析和检索。研究者们把图像的这些视觉特征,作为 图像的内容表示,进行匹配、查找。在某些特定领域得到了广泛应用,如用于指 纹识别、商标检索和医学图像检索等,因为这些领域的图像在某些特征上容易识 别,比如同一个手指的指纹其纹理是一样的。然而,i n t e r n e t 上的图像来自不 同的领域,根本无法捕获其共同点,用基于内容的方法对这些图像进行检索,其 效果远不能令人满意。 3 、基于语义的图像搜索 实践证明,t bi r 和c bi r 这2 种技术远不能满足人们对图像搜索的要求。 为了使图像检索系统更加接近人对图像的理解,研究者们又提出了基于语义的 图像检索( s e m a n t i c - - b a s e di m a g er e t r i e v a l ) ,试图从语义层次解决图像检 索问题。虽然图像的视觉特征在一定程度上能代表图像包含的信息,但事实上, 第一章引言 人1 l i e u 断图像的相似性并非仅仅建立在视觉特征的相似性上。更多的状况下, 用户主要根据返回图像的含义,而不是颜色、纹理、形状等特征,来判别图像满 足自己需要的程度。这些图像的含义就是图像的高层语义特征,它包含了人对图 像内容的理解。基于语义的图像检索的目的,就是要使计算机检索图像的能力 达到人的理解水平。 1 2 本课题研究内容 由于基于内容和基于语义的图像搜索引擎投入人力太多,难度较大,个人 在一定时间内很难取得明显的进展,本课题着重研究基于文本( 图像的外部信 息) 的图像搜索引擎。虽然基于文本的图像搜索在大型网站有所应用,如百度, g o o g l e 等网站。但大型的搜索引擎数据量太大,不太适合校园网,但校园网图 像搜索引擎是校园网内部私有的,内部的信息百度、g o o g l e 等外部网站不经授 权是无法访问的。目前我们的校园网搜索功能有文件搜索、网页搜索等,但图 像搜索这方面还是一个空缺,这已无法满足学校广大师生的需求,因此如果成 功的实现基于校园网的图像搜索功能可以扩大用户在校园网获取的信息量,来 充分发挥网络的优势资源共享,所以基于校园网的图像搜索引擎的研究很 具有实际意义,本课题研究和实现了校园网网页上图像信息的抓取、下载、索 引和检索,最终完成了一个简单而又较为完整的校园网图像搜索引擎系统。 2 第二章校园网图像搜索引擎概述 第二章校园网图像搜索引擎概述 2 1 搜索引擎的类型和基本原理 搜索引擎并不真正搜索互联网,它搜索的实际上是预先整理好的网页索引 数据库。搜索引擎也不能真正理解网页上的内容,它只能按照某种模式匹配网 页上的文字,真正意义上的搜索引擎,通常指的是收集了互联网上几千万到几 十亿个网页并对网页中的每一个文字( 即关键词) 进行索引,建立索引数据库的 全文搜索引擎。当用户查找某个关键词的时候,所有在页面内容中包含了该关 键词的网页都将作为搜索结果被搜出来。再经过复杂的算法进行排序后,这些 结果将按照与搜索关键词的相关度高低依次排列。 搜索引擎的原理,可以分为三步:从互联网上抓取网页一建立索引数据库 一在索引数据库中搜索排序口1 。 l 、从互联网上抓取网页t 利用能够从互联网上自动收集网页的搜索器系统 程序,自动访问互联网,并沿着任何网页中的所有u r l 链接到其它网页,重复 这过程,并把访问过的所有网页收集回来。 2 、建立索引数据库:由分析索引系统程序对收集回来的网页进行分析,提 取相关网页信息( 包括网页所在u r l 、编码类型、页面内容包含的所有关键词、 关键词位置、生成时间、大小、与其它网页的链接关系等) ,根据一定的相关 度算法进行大量复杂计算,得到每一个网页针对页面文字中及超级链接文字中 每一个关键词的相关度( 或重要性) ,然后用这些相关信息建立网页索引数据 库。 3 、在索引数据库中搜索排序:当用户输入关键词搜索后,由搜索系统程序 从网页索引数据库中找到符合该关键词的所有相关网页。因为所有相关网页针 对该关键词的相关度早已算好,所以只需按照现成的相关度数值排序,相关度 越高,排名越靠前。最后,由页面生成系统将搜索结果的链接地址和页面内容 摘要等内容组织起来返回给用户。 3 第二章校园网图像搜索引擎概述 2 2 图像搜索引擎的基本原理 图像搜索引擎是在通用搜索引擎基础上进行一些改进,需要对网页中的图 像文件进行抓取、分析、下载等单独的操作。图像搜索引擎又大体上分两中类 型: 1 、基于关键字( 图像的外部信息) : 基于关键字的图像搜索引擎其原理与搜索普通信息一样,差别只是搜索的 关键词不同,或者分类类别不同而已,包含图片、图像、照片。图像关键字( 图 像的外部信息) 主要是指图像的文件名或目录名、路径名、标题、链接、a l t 标签( 图像的替代文字) 以及图像周围的文本信息等外部信息,这是目前图像 搜索引擎采用最多的方法3 。在找出图像文件后,图像搜索引擎通过查看图像的 这些外部信息来确定图像内容,但这取决于图像外部信息的描述程度。 基于关键字的图像搜索引擎通常有三个模块组成。 ( 1 ) 数据的抓取模块,该模块是图像搜索引擎的数据来源,包含图像信息 和图像所在网页页面信息的抓取、解析以及图像文件的下载。 ( 2 ) 索引模块,该模块是把抓取到的图像信息根据一定的规则提取出有效 的关键文字,并建立索引数据库。 ( 3 ) 基于b s 架构的检索模块,该模块是图像搜索引擎索引库和用户的一 个接i e ,通过这个接1 :3 用户可以输入关键字,从索引数据库里查询到跟输入关 键字相关的图像,并通过浏览器显示出来。 以本课题研究的校园网图像搜索引擎为例,其基本组成如图2 1 : 4 第二章校园网图像搜索引擎概述 图2 1 校园网图像搜索引擎的基本组成 2 、基于图像内容特征描述: 这是一种语义层次的匹配,需要人工对图像的内容,如物体、背景、构成、 颜色等特征进行描述并分类,给出描述词。检索时,将主要在这些描述词中搜 索你的检索词。这种查询方式是比较准确的,一般来讲可以获得较好的查准率, 但需人工参与,劳动强度大,因而限制了可处理的图像数量,并且需要一定的 规范和标准,效果取决于人工描述的精确度。 由于基于图像内容特征描述的图像搜索引擎投入人力太多,难度较大,本 课题着重研究基于关键字的图像搜索引擎。 2 3 校园网图像搜索引擎的特点 校园网图像搜索引擎不同于大型的网站的图像搜索引擎,它应该具有部署 第二章校园网图像搜索引擎概述 容易、运行代价小的特点,在普通的计算机服务器上就可以运行,它还应限制 搜索空间,只在校园局域网中进行搜索。目前校园网是基于t c p i p 协议的i n t r a n e t ( 内部网络) ,且又能与i n t e m e t ( 互联网) 相通。校园网搜索和互联网搜索是没 有本质上的区别,但是校园网是有限的内部网络,其数据量相对有限,与互联 网的庞大信息量无法比拟,互联网是无限大的网络是由无数个网络组成的。因 此在搜索的时候,校园网是需要限于局域网内的地址,对校园外的网址是不需 要抓取信息的。同时校园网是物理上很近的计算机通过高速网络链接起来,所 以校园网的网络传输速度是远远高于互联网的速度,在抓取信息的时候需要在 速度和时间上进行控制,减少被抓取数据服务器的访问压力。还有一点,校园 网的制作上和互联网上的制作有差别,有些校园网网站由于投入不足,在网站 制作的规范上投入不够,可能在抓取图像信息的时候并不能获得该图像的说明 性提示文字等关键属性。 6 第三章校园网图像搜索引擎的设计 3 1 : 第三章校园网图像搜索引擎的设计 校园网图像搜索引擎分三大模块:抓取模块、索引模块和检索模块,如图 图3 1 校园网图像搜索引擎结构图 3 1抓取模块的设计 抓取模块有一个很形象和生动的名称,叫网络蜘蛛或者网络爬虫( s p i d e r ) 。 把互联网形象的比喻成一个蜘蛛网,那么s p i d e r 就是在网上爬来爬去的蜘蛛。 网络蜘蛛是通过网页的链接地址来寻找网页,从网站某一个页面( 通常是首页) 开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地 址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完 为止。如果把整个校园网当成一个庞大的信息库,那么通过网络蜘蛛的办法就 可以获取有关资源。 为了提高抓取的效率,可以用多线程来并行抓取。通用爬虫程序一般通过 j a v a 提供的j a v a 1 a n g t h r e a d 类来实现多线程,本课题为了简化多线程的编程, 用j a v a u t i l 包下面的定时器来实现多线程。定时器是对多线程的一种封装, 可以简化多线程的编程。 7 第三章校园网图像搜索引擎的设计 抓取过程的基本流程如图3 2 : 从等待队列读取一个u r l 地址 将这一网页移入完成队列 并继续 去重处理后保存解 析到的u r l 对应的域 名到等待队列 否 否 否 茎嚣群霎篙岁 ( 同一服务器上或同 一 一域中的锛接) 是是 将这一链接去重 后加入运行队列 定时器启动图像下载程序, 并存入本地硬盘,本地相对 路径存入图像队列 用户输入起始u r l ,此 u r l 被加入到等待队列 运行队列中 是否有u r l 是 定时定量依次下载r u n 队 列中u r l 对应的网页代码 这个页面包含 其官锛接么 遍历本页的所有链接 是否为指向 w e b 页的锛接 否 是否有图像 锛接 否 报告其它类型链接 图像链接去重后 加入图像队列 图3 2s p i d e r 抓取的基本流程 8 第三章校园网图像搜索引擎的设计 网络蜘蛛抓取页面一般有两种策略:深度优先和广度优先。广度优先是指 先抓取起始网页中链接的所有网页,然后再选择其中的一个链接网页,继续抓 取在此网页中链接的所有网页。这是最常用的方式,因为这个方法可以并行处 理,提高其抓取速度。深度优先是指从起始页开始,一个链接一个链接跟踪下 去,处理完这条线路之后再转入下一个起始页,继续跟踪链接。这个方法有个 优点是在设计的时候比较容易。两种策略的区别,图3 3 的说明会更加明确h 1 : 图3 3 广度、深度优先算法抓取顺序 在本课题中,采用的是广度优先的策略,没有设置抓取得深度。广度优先 搜索,即b f s ( b r e a d t hf i r s ts e a r c h ) ,常常与深度优先搜索并列提及。这是一种 相当常用的图的遍历算法,其特点是:每次搜索指定点,并将其所有未访问过 的近邻加入搜索队列( 而深度优先搜索则是栈) ,循环搜索过程直到队列为空。 本课题选择广度优先算法是因为该系统的搜索范围是本学校的局域网,范围小, 网页数量相对也比较少,而且对抓全率要求高,这样可以保证本校相关的信息 资源都能够检索到。 本课题的算法设计主要就是依据非递归的思想构造的,当一个u r l 被加入 到等待队列中时,网络机器人就会在某一时刻运行。只要等待队列中有一个网 页或网络机器人正在处理一个网页,网络机器人就会继续它的工作。当等待队 列为空并且当前没有处理任何网页,网络机器人就会停止它的工作。基本的算 法如下所示: i n i t i a l i z eu r l s :用一个u r l 集合初始化网络机器人。 q u e u ee n u m w a i t q ,f i n i s h q ,r u n q ;队列类型:等待、完成、运行。 9 第三章校园网图像搜索引擎的设计 f i l e t e x t : l i n k t y p ee n u m i n t e m a l l i n k ,e x t e r n a l l i n k ,o t h e r l i n k ;超链类型:内部、外部、 其他链接。 b e g i n f o r u r li n u r l sd o p o p q u e u e ( u r l ,w a i t q ) ;初始化u r l 集合被加入到等待队列中。 w h i l ew a i t qi sn o te m p t yd o 笋l j 断等待队列是否有u r l 。 b e g i n u r l = p u s h q u e u e ( w a i t q ) ;从等待队列中取出u r l 。 w h i l er u n qi sn o te m p t yd o 笋l j 断运行队列是否有u r l 。 d o c u m e n t = p o p q u e u e ( u r l ,r u n q ,l i n k t y p e ) ; s a v e f i l e t e x t ( d o c u m e n t ,f i l e t e x t ) ;下载并保存运行队列中u r l 对应的网页。 i fe x t r a c t ( n e w u r l s ) f r o md o c u m e n ti sn o tn u l l 从下载的网页 中找新的链接。 b e g i n f o ru r li nn e w u r l sd o b e g i n i f u r li sn o ti nf i n i s h q1 1 1 e n 如完成队列中没有u r l 。 i fu r ll i n k t y p ei se n t e m a l l i n kt h e n 如链接是外部链接。 p o p q u e u e ( u r l ,w a i t q ,l i n k t y p e ) ;将外部链接的域名加入到等待队列中。 i f u r li si m gt h e n 如果有图像 i f c h e c k l m g ( u r l ) t h e n 判断是否重复,并且去掉没价值的图像 p u t l m g q u e u e 不重复则放入图像队列 e n d e l s e p o p q u e u e ( u r l ,r u n q ,l i n k t y p e ) ;否则将链接加入到运行队列中。 e n d : e n d ; e n d ; p o p q u e u e ( u r l ,f i n i s h q ,l i n k t y p e ) ; e n dw h i l e ; l o 第三章校园网图像搜索引擎的设计 3 。2 索引模块的设计 索引的功能是处理分词所得到的信息,从中抽取出索引项,将半结构化的 数据转换成方便检索的结构化的数据,用于表示网页以及生成网页库的索引表。 索引是检索与数据的接口,是加快检索的有效方式,因此索引的好坏直接影响 到整个搜索引擎性能的好坏喁,。 索引部分是对解析和处理后的数据进行存储的一个过程。对信息进行索引 有很多方式,其中最常用的有数据库索引和全文检索索引。本系统是基于校园 网的信息搜索系统,有如下特点:信息量大,查询速度要求快,查询的准确率 要求高,结果需排序。而数据库系统在这几个方面都不是强项,因此选择全文 检索方式来进行索引。由于开发一个全文索引引擎也是需要大量的时间和人力 的,为了把主要精力用于完成本系统,因此采用一个现有的开源的a p a c h e 项目 l u c e n e 。 l u c e n e 不是一个完整的全文索引应用,而是一个用j a v a 写的全文索引引擎 工具包,提供索引和检索的a p i ,它可以方便的嵌入到各种应用中实现针对应用 的全文索引、检索功能。 在本课题中会用到l u c e n e 的常用的一些a p i 接口,例如:建立索引,增加 索引,和索引的查询,在后面的实现过程中,会逐一的陈述。 在抓取模块里爬虫程序不断的从u r l 池里读取u r l 地址并解析出页面u r l 地址和图像u r l 地址,以及图像相关的一些属性例如:图像的宽度、高度,图 像所属的页面编号,图像的外部描述文字,图像在本地磁盘的存储路径等,然 后存入图片队列中,并且根据图像u r l 地址下载图像到本地磁盘中。搜索引擎 需要进行索引的数据正是图像队列里的数据。 为了提取图像信息的关键字,在索引前需要对要索引的字符串进行分词, 一般英文分词很简单只需按照空格即可以把词分开。但是中文是一整句的,需 要把一个句子按照常用词库里的结构进行切割,然后进行索引处理,保存到索 引库里。 中文分词库是按照人们常用的习惯来组织的一个中文词典文件,分词程序 就是把句子里的词语和词典文件里的词匹配。中文分词库的好坏就要看词语是 否符合人们的习惯。由于中文分词是另外一门深入的课题,本次只用到成熟的 中文分词库来进行分词,此次使用的分词库是i k a n a l y z e r 。i k a n a l y z e r 基于 第三章校园网图像搜索引擎的设计 l u c e n e 2 0 版本a p i 开发,实现了以词典分词为基础的正反向全切分算法,是 l u c e n ea n a l y z e r 接口的实现。 3 3 检索模块的设计 检索部分是用户和已经索引的信息之间的一个接口,用户通过检索模块输 入想要查询的关键词,从l u c e n e 索引库里查出用户想要的信息。 为了能更好的向校园内大量用户提供简便快捷的图片检索服务,采用b s 架 构来实现,前端采用t o m c a t 服务器组件,程序采用基于m v c 模式的结构。 检索模块是一个综合性比较高的模块,它涉及到到用户的界面接口和索引 库的接口。上面提到采用t o m c a t 服务器组件,和t o m c a t 类似的服务器组件还 有w e b l o g i c ,w e b s p h e r e ,r e s i n 等。在这里采用t o m c a t 是因为t o m c a t 是开放 源代码,并且是免费使用的,商业服务器组件价格非常昂贵,同时也不需要那 些复杂的功能,如e j bj m x 等j a v ae e 的高级功能。 基于m v c 的模式是一个比较优秀的模式,在m v c 编程模式流行之前,程序 逻辑代码和表现层代码以及数据库操作的代码都混合在一起,这样的结果是要 维护和修改程序的时候,可能要面对着很长和很混乱的代码,并且代码之间的 关联比较多,很容易造成维护复杂度的提高和成本的提高。m v c 模式大概的思想 是把程序的数据库操作,程序逻辑控制,程序的用户u i 界面分开,即把一个应 用的输入、输出、处理流程按照m o d e l 、v i e w 、c o n t r o l l e r 的方式进行分离, 这样一个应用被分成三个层模型层、视图层、控制层。这样的话,只需要 修改各部分的代码,即可完成维护。如图3 4 : a p p l i c a t i o n $ e r v , n -嘲删 图3 4m v c 模式图 1 2 第三章校园网图像搜索引擎的设计 3 4 系统主要类的说明 本系统有几个包组成:0 r g p s e b a s e ,o r g p s e 。b e a n ,o r g p s e d a o , o r g p s e s p i d e r ,o r g p s e u t i l ,o r g p s e i n d e x ,他们的作用如表3 1 、3 2 、 3 3 、3 4 、3 5 、3 6 所示: 表3 1b a s e 包 b a s e 包本包存放系统常量 文件名文件作用 c o n s t a n t j a v a 用来定义一些常量 表3 2b e a n 包 b e a n 包本句l 丰要存放各实体类 文件名文件作用 p e r m i t s i t e j a v a 允许网站类 p a g e ja v a网页实体类 i m a g e j a v a图像实体类 r u n j a v a 运行队列实体类 i m a g e h b m x m l 图像的h i b e r n a t e 配置文件 p a g e h b m x m l页面的对象映射配置文件 p e r m i t s i t e h b m x r n l允许网站的对象映射配置文件 r u n h b m x m l运行队列的对象映射配置文件 w a i t h b m x m l等待队列的对象映射配置文件 表3 3d a o 包 d a o 包本包主要存放各对象数据库操作类 文件名文件作用 i m a g e d a o j a v a 图像队列的数据库操作类 p a g e d a o j a v a网页的数据库操作类 p e r m i t s i t e d a o j a v a允许网站的数据库操作类 r u n d a o j a v a运行队列的数据库操作类 w a i t d a o j a v a 等待队列的数据库操作类 第三章校园网图像搜索引擎的设计 表3 4s p i d e r 包 s p i d e r 包 本包主要存放主业务逻辑类 文件名文件作用 c o r e j a v a s o c k e t 下载网页和图像的核心类 d o w n l o a d l m a g e j a v a 下载图像业务类 s p i d e r 3 j a v a 网络抓取业务类 p a r s e r j a v a 正则表达式解析网页类 d o w n l o a d l m a g e t a s k j a v a下载图像任务类 i n d e x l m a g e t a s k j a v a索引图像资料任务类 s p i d e r t a s k j a v a 爬虫抓取任务类 d o w n l o a d l m a g e m a i n j a v a图像下载定时器类 i n d e x l m a g e m a i n j a v a 索引定时器类 s p i d e r m a i n j a v a 爬虫抓取定时器类 表3 5u t i l 包 u t i l 包本包主要存放自定义工具辅助集合类 文件名 文件作用 h i b e m a t e u t i l j a v a 自定义的h i b e r n a t e 的数据库操作 s t r i n g h e l p e r j a v a 字符串处理类 t i m e h e l p e r j a v a 时间格式化处理类 表3 6i n d e x 包 i n d e x 包 本包主要存放索引的封装类包 文件名文件作用 i n d e x h e l p e r j a v a 自定义索引操作封装类 p i c t u r e d o c u m e n t j a v a 图像文档的封装类 1 4 第四章校园网图像搜索引擎的实现 第四章校园网图像搜索引擎的实现 4 1 开发环境与工具 开发环境是基于流行的j a v a e e 技术框架j a v a + t o m c a t + o r a c l e + e c l i p s e + j s p + h i b e r n a t e ,下面系统开发环境的描述。 4 1 1j a v a 开发环境建立 j a v a 语言是美国s u nm i c r o s y s t e m s 公司推出的,该语言具有安全、跨平台、 面向对象、简单、适用于网络等显著特点,它的出现引起所有程序员和软件公 司的极大关注。目前,j a v a 语言已经成为最流行的网络编程语言,许多大学都 开设了j a v a 课程,j a v a 正逐步成为世界上程序员最多的编程语言。 开发j a v a 首先要安装j d k 软件开发包,下面介绍环境配置过程。 1 、安装j a v ad e v e l o pk i t ( j d k ) s u n 公司为所有的j a v a 程序员提供了一套免费的j a v a 开发和运行环境,取 名为j a v a 2s d k ,可以从h t t p :w w w s u n c o m 上进行下载,也可以从同方教育 网站上下载。安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到d : j d k l 5 o0 1 目录下。通常在j d k 目录下有b i n 、d e m o 、l i b 、j r e 等子目录,其 中b i n 目录保存了j a v a c 、j a v a 、a p p l e t v i e w e r 等命令文件,d e m o 目录保存了 许多j a v a 的例子,l i b 目录保存了j a v a 的类库文件,i r e 保存的是j a v a 的运 行时环境。 2 、配置类路径 在安装完j d k 之后,必须配置类路径c l a s s p a t h 和环境变量p a t h ,j d k 才 能够正常运行。具体配置过程为:用右键单击桌面上”我的电脑”,选择”属性”, 则弹出一个名为”系统特性”的窗口,选择”高级”,然后选择”环境变量”,在”环 境变量”窗口中编辑c l a s s p a t h 和p a t h 。如下图4 1 、4 2 、4 3 所示: 第四章校园网图像搜索引擎的实现 图4 1 环境变量选择示意图 图4 2 编辑p a t h 示意图 图4 3 编辑c l a s s p a t h 示意图 1 6 第四章校园网图像搜索引擎的实现 4 1 2t o m c a t 服务器 t o m c a t 服务器是在s u n 公司的j s w d k ( j a v a s e r v e rw e bd e v e l o p m e n t k i t , 是s u n 公司推出的小型s e r v l e t j s p 调试工具) 的基础上发展起来的一个优秀 的s e r v l e t j s p 容器,它是a p a c h e j a k a r t a 软件组织的一个子项目。它不但支 持运行s e r v l e t 和j s p ,而且还具备了作为商业j a v aw e b 应用容器的特征。 t o m c a t 是一个免费的开源的s e r l v e t 容器,它是a p a c h e 基金会的j a k a r t a 项目中的一个核心项目,由a p a c h e ,s u n 和其它一些公司及个人共同开发而成。 由于有了s u n 的参与和支持,最新的s e r v l e t 和j s p 规范总能在t o m c a t 中得到 体现。 与传统的桌面应用程序不同,t o m c a t 中的应用程序是一个w a r ( w e b a r c h i v e ) 文件。w a r 是s u n 提出的一种w e b 应用程序格式,与j a r 类似,也是许多文件的 一个压缩包。这个包中的文件按一定目录结构来组织:通常其根目录下包含有 h t m l 和j s p 文件或者包含这两种文件的目录,另外还会有一个w e b i n f 目录, 这个目录很重要。通常在w e b - i n f 目录下有一个w e b x m l 文件和一个c l a s s e s 目录,w e b x m l 是这个应用的配置文件,而c l a s s e s 目录下则包含编译好的 s e r v l e t 类和j s p 或s e r v l e t 所依赖的其它类( 如j a v a b e a n ) 。通常这些所依赖 的类也可以打包成j a r 放到w e b - i n f 下的l i b 目录下,当然也可以放到系统的 c l a s s p a t h 中,但那样移植和管理起来不方便。 t o m c a t 不仅仅是一个s e r v l e t 容器,它也具有传统的w e b 服务器的功能: 处理h t m l 页面。但是与a p a c h e 相比,它的处理静态h t m l 的能力就不如a p a c h e 。 可以将t o m c a t 和a p a c h e 集成到一块,让a p a c h e 处理静态h t m l ,而t o m c a t 处 理j s p 和s e r v l e t 。这种集成只需要修改一下a p a c h e 和t o m c a t 的配置文件即可。 至于服务器安装,解压版的直接解压就可以了,安装版的要注意的两点, 一个是安装完之后t o m c a t 的服务就能够启动的了,但是还是要配置 t o m c a th o m e ;第二个就是需要查看一下安装程序是不是把t o m c a t 服务注册成 为w i n d o w s 的启动服务,需要到“服务 里查看,如果有这个选项就把它设置 为手动启动,并且先停止这个服务。 1 7 第四章校园网图像搜索引擎的实现 服务正常启动之后,浏览器里输入h t t p :l o c a l h o s t :8 0 8 0 如果出现正 常的小猫页面,那就应该没有问题了,如图4 4 : 。,蔓鬣;黼j 曩关移l i ,。缮络 黜掣鸶墼慨燃痢l 。v 国熟冁 i f :;攫。、j 。l 吣p 旱:! :? ! ,j a j k ,a 。r t ,a 。p 。r 。o j ,:e ,、c 。t 。,。j n 0 1 t :t h sp a g e i sp r e c o m p i l e di f y o uc h a n g e 止t h i sp a g e w i l ln o tc h a n g es i n c e t t w a sc o m p i l e d i n t oa s e r , 4 e c a t b u i | dc i m ef s e es c a t a l i n ah o m e w e b a p p s r o o t w e a i n f w e bx m la s 【oh o w i t w a s m a p p e d ) n o t e :f o rs e c u r i t yr e a s o n s u s i n gt h ea d m i n i s t r a t i o nw e b a p pi sr e s t r i c t e dt ou s e r sw i t hr o l e ”a d m i n ”t h em a n a g e rw e b a p pi sr e s t r i c t e dt ou s e r sw i t hr o l e 1 m a n a g e r ”u s e r sa r ed e f i n e di n 5 c a t a l i n a h o m e c o n f t o m c a t u s er s x m l l n c l u d e dw l t h 廿1 i sr e l e a s ee r eah o e o fs a m p l es e r v l e t sa n dj s p s ( v a t ha s s o o a t e ds o u r c ec o d e ) e x t e n s l v ed o c u m e n t a a o n ( i n d u d i n gm es e n , 4 e t24a n dj s p20a p lj a v a d o c ) a n d8 r li n 耵o d u c t o 吖g u , d e t od e v e l o p i n gw e ba p p h c a t l o n s v 幽亮毕 尊1 m ,他t 琵隧荔磊荔荔酉i 蚕蚕弦荔区瑟蚕虿荔瑟互虿荔i 荔互二瑟瑟五乏趸墓蓄蓬薹墓荔乏蔷瑟鑫玉溢溢;i ;i 医。蔓i i i ! 蠹囊囊囊囊戮:。; 图4 4t o m c a t 安装成功界面图 4 1 30 r a cle 数据库系统 o r a c l e 是以高级结构化查询语言( s q l ) 为基础的大型关系数据库,通俗地 讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的客 户月艮务器( c l i e n t s e r v e r ) 体系结构的数据库之一。它之所以倍受用户喜爱是 因为它有以下突出的特点: ( 1 ) 支持大数据库、多用户的高性能的事务处理。o r a c l e 支持最大数据库, 其大小可到几百千兆,可充分利用硬件设备。支持
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 一建二建公路工程考试1000问(含答案详解)
- 人教版英语三年级下册新教材课件Unit 5
- 诊所备案管理制度
- 公关服务公司公关项目转包与分包管理制度
- PLC技术及应用(微课版)课件 9.3知识详解触摸屏
- 2026调查研究类面试题及答案
- 工业机器视觉检测合同协议2026年
- 核电余热排放收集及供给项目可行性研究报告模板立项申批备案
- 体检车辆接送调度与安全管理工作手册
- 腺样体面容儿童心理关怀与引导手册
- 利害业主关系协议书
- 青少年卫生健康知识讲座
- 《观赛礼仪》课件
- 2024年四川泸州翰飞航天科技发展有限责任公司招聘笔试参考题库含答案解析
- 《功能性食品学》第七章-辅助改善记忆的功能性食品
- 双管高压旋喷桩施工方案
- 分析化学第六章氧化还原滴定法
- 脊柱外科进修汇报
- 定点医疗机构医保管理制度
- 《原地侧向投掷轻物》教案 -省赛一等奖
- D500-D505 2016年合订本防雷与接地图集
评论
0/150
提交评论