关键字:lucene,html parser,全文检索,IndexReader,Document,Field,IndexWriter,Term,HTMLPAGE
无论是建立索引还是分析内容,都是为了用户的搜索服务.
在Lucene中,如果需要使用搜索,需要使用Searcher类,这是一个抽象类,它有2个子类:IndexSearcher和MultiSearcher.
IndexSearcher是对一个索引进行搜索,如果你需要对多个索引进行搜索,可以使用MultiSearcher.下面的内容只介绍了IndexSearcher.
搜索涉及到几个问题:分页,组合条件,根据条件过滤,排序等等.
分页:分页在记录列表的地方都会遇到,这里不在赘述,我也实现过一个保存分页结果和显示结果的类,用于自己的实际工作,下面也会用到保存分页结果的类,代码如下:
| package com.jscud.support; /** * 分页显示用的参数. * * @author scud(飞云小侠) http://www.jscud.com * */ public class DivPageInfo { //开始记录数 private int recStart; //结束记录数 private int recEnd; //总页数 private int pageCount; //当前页 private int page; //记录总数 private int recCount; //每页记录数 private int perPageRows; public int getNicePageCount() { return getNicePageNum(pageCount); } //get,set等,不在列出 //...... /** * 得到友好的页数数字,页数为0时,返回1. * * @return 得到友好的页数 */ public static int getNicePageNum(int nPage) { if (nPage == 0) { return 1; } else { return nPage; } } } 无论是建立索引还是分析内容,都是为了用户的搜索服务. 在Lucene中,如果需要使用搜索,需要使用Searcher类,这是一个抽象类,它有2个子类:IndexSearcher和MultiSearcher. IndexSearcher是对一个索引进行搜索,如果你需要对多个索引进行搜索,可以使用MultiSearcher.下面的内容只介绍了IndexSearcher. 搜索涉及到几个问题:分页,组合条件,根据条件过滤,排序等等. 分页:分页在记录列表的地方都会遇到,这里不在赘述,我也实现过一个保存分页结果和显示结果的类,用于自己的实际工作,下面也会用到保存分页结果的类,代码如下:
|