Lucene高亮显示,排序,过滤
来源:互联网 发布:java实现加减乘除 编辑:程序博客网 时间:2024/06/06 12:36
Lucene高亮显示,排序,过滤
/** * lucene高亮显示,排序,过滤 * @author Administrator * */public class TestlighterHighter {@Testpublic void testLigghterhighter() throws IOException, ParseException, InvalidTokenOffsetsException{//创建目录 Directory directory=FSDirectory.open(new File("D://luceneDirluceneDir"));//版本 Version version = Version.LUCENE_44;//分词器Analyzer analyzer = new StandardAnalyzer(version);//创建indexReaderIndexReader indexReader = DirectoryReader.open(directory);IndexSearcher indexSearcher = new IndexSearcher(indexReader);//关键字及查询字段String keyword = "全文检索";String [] fields = {"title","content"};//查询对象QueryParser queryParser = new MultiFieldQueryParser(version,fields,analyzer);Query query = queryParser.parse(keyword);//创建highlighter对象Formatter formatter = new SimpleHTMLFormatter("<font color='green'>","</font>");Scorer fragmentScorer = new QueryScorer(query);Highlighter highlighter = new Highlighter(formatter,fragmentScorer);//排序 SortField sortedField = new SortField("id",Type.INT,true);Sort sort = new Sort(sortedField);//过滤器Filter filter = NumericRangeFilter.newIntRange("id", 1, 4, true, true);TopDocs topDocs =indexSearcher.search(query, filter, 10, sort);System.out.println("total==="+topDocs.totalHits);ScoreDoc[] scoreDocs = topDocs.scoreDocs;for (ScoreDoc scoreDoc : scoreDocs) {int docID = scoreDoc.doc;System.out.println("documentID===="+docID);Document document = indexSearcher.doc(docID);String id = document.get("id");String title = document.get("title");String content = document.get("content");String hightitle = highlighter.getBestFragment(analyzer, "title", title);String highcontent = highlighter.getBestFragment(analyzer, "content", content);System.out.println("id==="+id);System.out.println("title==="+title);System.out.println("content===="+content);System.out.println("hightitle===="+hightitle);System.out.println("highcontent==="+highcontent);System.out.println("------------------------------------------------------------------"); }} }
0 0
- Lucene高亮显示,排序,过滤
- lucene查询索引库、分页、过滤、排序、高亮
- lucene 高亮显示
- lucene高亮显示
- lucene 高亮显示
- Lucene-排序+高亮
- 全文检索Lucene(三)----查询,分词器,排序,过滤,高亮
- lucene学习---高亮显示
- Lucene关键字高亮显示
- Lucene高亮显示详解
- Lucene高亮显示详解
- Lucene高亮显示详解
- Lucene高亮显示内容
- Lucene高亮显示详解
- Lucene+HighLighter高亮显示实例
- Lucene笔记+PaodingAnalyzer+高亮显示
- lucene查询后关键字高亮显示
- lucene学习--分词和高亮显示
- 123
- php 在同一个表单中添加和修改数据 二
- JAVA反射机制
- 读《程序员的自我修养-链接装载与库》
- C语言中单引号和双引号的区别
- Lucene高亮显示,排序,过滤
- 03_03.inline-block
- 大型票务系统自身特点所引入的安全性问题
- ubuntu 环境搭建问题归纳
- TI_DSP_corePac_带宽管理 - 1.1(优化带宽管理)
- 运算符重载与友员函数
- poj 1936
- c++ static关键字的用法
- 鼠标响应文字跳动效果