我现在对全文检索有些感兴趣,想做一个新闻搜索的例子,大概就像百度的那种效果,不过是要用apache的lucene来实现,是对数据库检索,哪位大侠能给我讲解一下,车东的那篇文章看的不是很清楚,能不能给我给个检索数据库的例子,谢了!!

解决方案 »

  1.   

    目前国内用LUCENE的人还很少,貌似;国内的中文LUCENE书也基本是从LUCENE IN ACTION中抄的。楼住,多多努力啊!加油~
      

  2.   

    大体说一下lucene的作用吧!lucene是一个公用的全文索引组件,它的目标是把各种各样格式的数据转化成lucene特有的索引文件格式,这样才能通过lucene的高速检索机制进行全文检索。你的数据来源可以是关系数据库,可以是word、execl、txt文档,可以是html网页,对于这些数据源,你必须将它们内部的数据读取出来,并封装成lucene的document实例,之后让lucene帮你构建索引。举个例子:你的有一个用户数据库,里面存储了几十万的用户信息,你现在要对这个数据库进行全文索引,那么你要做的事情是:   1.写一段传统的JDBC程序,讲每条的用户信息从数据库读取出来
       2.针对每条用户记录,建立一个lucene document 
            Document doc = new Document();
         并根据你的需要,将用户信息的各个字段对应luncene document中的field 进行添加,如:       
            doc.add(new Field("NAME","USERNAME", Field.Store.YES,Field.Index.UN_TOKENIZED));
         然后将该条doc加入到索引中, 如: luceneWriter.addDocument(doc);
         这样就建立了lucene的索引库
       3.编写对索引库的搜索程序(看lucene文档),通过对lucene的索引库的查找,你可以快速找到对应记录的ID
       4.通过ID到数据库中查找相关记录上面阐述了lucene的大体用法,不知道是不是说的很清楚。此外,对中文建索引,很重要的是支持中文的分词器,如果需要,你可以参考一下http://community.csdn.net/Expert/topic/5230/5230667.xml?temp=.3637964
      

  3.   

    http://community.csdn.net/Expert/TopicView.asp?id=5230667