`
strayly
  • 浏览: 93579 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

lucene自定义排序

阅读更多
lucene能够很方便的实现自定义排序

具体做法就是写一个类实现SortComparatorSource这个接口

在类里返回ScoreDocComparator

实现ScoreDocComparator 的三个方法compare,sortValue,sortType就行了

public class MyComparatorSource implements SortComparatorSource {  
private static final long serialVersionUID = 1L;  
      

       
     // 返回ScoreDocComparator 用来实现排序功能  
     public ScoreDocComparator newComparator(IndexReader reader, String fieldname) throws IOException {  
         return new DistanceScoreDocLookupComparator();  
     }  
       
      private static class DistanceScoreDocLookupComparator implements ScoreDocComparator {  
          //这里写实现自己的排序比较方法
         public int compare(ScoreDoc i, ScoreDoc j) {  
             if (i.score > j.score) return -1;
             if (i.score < j.score) return 1;
             return 0;
         }  
           
         // 返回值  
         public Comparable sortValue(ScoreDoc i) {
                      return new Float(i.score);  
         }  
           
         //指定SortType  
         public int sortType() {  
             return SortField.FLOAT;  
        }  
  }
}

分享到:
评论

相关推荐

    lucene自定义排序实现

    lucene自定义排序实现,大家有兴趣关注我的博客http://blog.csdn.net/wuyinggui10000/article/category/3173543

    java Lucene 中自定义排序的实现

    Lucene中的自定义排序功能和Java集合中的自定义排序的实现方法差不多,都要实现一下比较接口. 在Java中只要实现Comparable接口就可以了.但是在Lucene中要实现SortComparatorSource接口和ScoreDocComparator接口.在...

    Lucene5学习之自定义排序

    NULL 博文链接:https://iamyida.iteye.com/blog/2201372

    lucene排序.zip

    Lucene根据关键词出现次数排序以及自定义排序,可以自定义优先级,包含list字段排序与pom等

    Lucene 3.6 学习笔记

    第一章 LUCENE基础 2 1.1 索引部分的核心类 2 1.2 分词部分的核心类 2 1.3 搜索部分的核心类 2 第二章 索引建立 3 2.1 创建Directory 3 2.2 创建Writer 3 2.3 创建文档并且添加索引 4 2.4 查询索引的基本信息 5 2.5 ...

    lucene5.5demo

    一个简单的lucene demo,使用Lucene5.5+springmvc+mysql开发,包括索引的增删改查,查询中可以高亮显示+分页+自定义排序,有兴趣的朋友可以看看

    Lucene IndexApplication:使用lucene索引文本文档-开源

    按任何字段进行日期范围搜索和排序。 增量索引与批量索引一样快。 Quartz.NET 引擎,用于搜索索引服务的自定义作业调度。 自动和安排 Lucene 搜索索引的构建。 用于记录系统消息的通用日志框架。 您可以为严重和非...

    Hbase 二级索引方案

    在 Hbase 中,表的 RowKey 按照字典排序, Region 按照 RowKey 设置 split point 进行 shard, 通过这种方式实现的全局、分布式索引. 成为了其成功的最大的砝码。 然而单一的通过 RowKey 检索数据的方式,不再满足更多...

    minerva:计算机科学项目

    密涅瓦 计算机科学项目。 依赖关系 指南 Cross validation: $ java -cp liblinear-1.94.jar de.bwaldvogel.liblinear.Train -s 7 -v 10 ".scale file" ... 排名者包含用于对段落结果进行排序和重新排序的类

    searchengineer:垂直搜索

    searchengineer 垂直搜索 实现了一个小型完整的搜索引擎系统...最后是搜索引擎的核心全文索引,了解了自定义的数据结构,数据类型,怎样以二进制的形式读写文本,怎样以utf-8编码形式存储文本,快速排序,二分查找的运用。

    word源码java-ElasticSearch-Simple-Share:组内关于ElasticSearch的简单使用说明内容分享

    自定义配置 集群内的原理 映射和分析 排序与相关性 实际使用中的Q&A 检索包含中文的关键字时返回结果不准确 中文分词器 字典 中文参数预处理 索引重建 Reindex API 索引别名实现零停机 检索关键字包含特殊字符 保留...

    大数据技术 Hadoop开发者第二期 MapReduce HDFS Hive Mahout HBase 共64页.pdf

    3、支持自定义爬虫的Nutch segment文件存储接口改写........... - 11 - 4、Nutch中mapreduce应用的几个特殊点 ...................... - 14 - 5、Java RMI + Lucene 构建分布式检索应用初探 ................ - 17 -...

    hadoop开发者文档

    3、支持自定义爬虫的Nutch segment文件存储接口改写........... - 11 - 4、Nutch中mapreduce应用的几个特殊点 ...................... - 14 - 5、Java RMI + Lucene 构建分布式检索应用初探 ................ - 17 -...

    mvc.jquery.datatables:ASP MVC帮助器,用于将IQueryable与令人惊叹的DataTables.net插件连接

    Lucene.Net.Linq 包装非常全面的jquery datatables插件。 支持的功能: 过滤(文本,日期或日期时间范围(带有日期选择器),数字范围,从下拉菜单中选择,使用复选框的多个值) 排序(每列可配置) 分页(选择...

    J2EE spring mvc mybatis bootstrap HTML5 后台框架 控制台 mysql版本_spring3.0

    内设编号,排序等 6. 系统设置:修改系统名称,邮件服务器配置,短信账号设置,图片水印配置,微信配置 7. 代码生成:打开代码生成器模块 8. 图库管理:对批量上传的图片统一管理 9. 性能监控:监控整个系统的性能,...

    J2EE spring mvc mybatis bootstrap HTML5 后台框架 控制台 oracle版本_spring3.0

    内设编号,排序等 6. 系统设置:修改系统名称,邮件服务器配置,短信账号设置,图片水印配置,微信配置 7. 代码生成:打开代码生成器模块 8. 图库管理:对批量上传的图片统一管理 9. 性能监控:监控整个系统的性能,...

    CrapApi接口管理系统-其他

    项目管理、用户管理、模块管理、BUG管理、接口管理、接口版本管理、接口拷贝、接口文档pdf下载、接口mock、模块加密访问、接口在线调试、数据字典管理、数据字典加密访问多管理员、多权限、自定义菜单、自定义网站...

Global site tag (gtag.js) - Google Analytics