Lucene的搜索结果默认按相关度排序,这个相关度排序是基于内部的Score和DocID,Score又基于关键词的内部评分和做索引时的boost。默认Score高的排前面,如果Score一样,再按索引顺序,先索引的排前面。那么有人问了,如果我要先索引的排后面怎么办呢?隐士研究了源码后发现这是相当简单的事情。以下代码基于Lucene 2.0。
看Sort的默认构造函数,相关度就是SortField.FIELD_SCORE和SortField.FIELD_DOC的组合。
java 代码
-
- public Sort() {
- this(new SortField[] { SortField.FIELD_SCORE, SortField.FIELD_DOC });
- }
那么该如何构造我们需要的SortField呢?请看SortField的一个构造函数,有一个参数reverse可供我们调整结果集的顺序。
java 代码
-
- public SortField (String field, int type, boolean reverse) {
- this.field = (field != null) ? field.intern() : field;
- this.type = type;
- this.reverse = reverse;
- }
由此可见,只要构造一个SortField[]就可以实现我们要的功能,请看:
java 代码
-
- new SortField[] { SortField.FIELD_SCORE, new SortField(null, SortField.DOC, true) }
-
-
- new SortField[] { new SortField(null, SortField.SCORE, true), new SortField(null, SortField.DOC, true) }
呵呵,只要将此SortField[]作为参数传入Sort的构造函数得到Sort的一个instance,将此instance传入searcher.search(query, sort)即可得到了期望的结果。
相关推荐
lucene自定义排序实现,大家有兴趣关注我的博客http://blog.csdn.net/wuyinggui10000/article/category/3173543
在一定深度介绍LUCENE的排序算法和打分公式。
SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...
lucene4.3 按坐标距离排序,里面写了个简单的例子。运行就行
传统上,人们将信息检索系统返回结果的排序称为"相关排序" (relevance ranking) ,隐含其中各条目的顺序反映结果和查询的相关程度。
lucene的排序过滤和分页,lucene开发技术,lucene下载
SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...
SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎
Lucene根据关键词出现次数排序以及自定义排序,可以自定义优先级,包含list字段排序与pom等
lucene排序、设置权重、优化、分布式搜索.pdf
并按照lucene的得分算法进行多条件检索并按照得分算法计算匹配度排序。 可以输入一句话进行检索。 lucene.net的版本为2.9.2 盘古分词的版本为2.3.1 并实现了高亮功能。高亮上使用的是盘古分词的高亮算法。 有点小bug...
该资源包括常用的4.6.1的lucene的jar包,一般的搜索开发就够用了。
lucene文档,lucene文档,lucene文档,lucene文档,lucene文档,lucene相关文档
lucene相关十几个包。
SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...
SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...
SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...
SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part3 SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎--NewsWithSearch.part2 SSH + Lucene + 分页 + 排序 + 高亮 ...
NULL 博文链接:https://iamyida.iteye.com/blog/2201372