摘要: 一、前言 上篇介绍了搜索结果高亮的实现方法,本篇主要介绍搜索结果相关性排序优化。 二、相关概念 2.1 排序 默认情况下,返回结果是按照「相关性」进行排序的——最相关的文档排在最前。 2.1.1 相关性排序(默认) 在 ES 中 相关性评分 由一个浮点数表示,并在搜索结果中通过「 \_score 」 阅读全文
posted @ 2019-03-08 16:57 枫本非凡 阅读(4451) 评论(2) 推荐(1) 编辑
摘要: 一、前言 在实际使用中搜索结果中的关键词前端通常会以特殊形式展示,比如标记为红色使人一目了然。我们可以通过 ES 提供的高亮功能实现此效果。 二、代码实现 前文查询是通过一个继承 ElasticsearchRepository 的接口实现的,但是如果要实现高亮,这种方式就满足不了了,这里我们需要通过 阅读全文
posted @ 2019-03-08 16:57 枫本非凡 阅读(2127) 评论(4) 推荐(1) 编辑
摘要: 一、前言 上篇介绍了 ES 的基础搜索,能满足我们基本的需求,然而在实际使用中还可能希望搜索「番茄」能将包含「西红柿」的结果也罗列出来,本篇将介绍如何实现同义词之间的搜索。 二、安装 ES 同义词插件 2.1 同义词插件简介 GitHub 地址: "https://github.com/ginobe 阅读全文
posted @ 2019-03-08 16:56 枫本非凡 阅读(2933) 评论(0) 推荐(0) 编辑
摘要: 一、前言 上篇介绍了 ES 的基本概念及环境搭建,本篇将结合实际需求介绍整个实现过程及核心代码。 二、安装 ES ik 分析器插件 2.1 ik 分析器简介 GitHub 地址:https://github.com/medcl/elasticsearch analysis ik 提供两种分词模式:「 阅读全文
posted @ 2019-03-08 16:56 枫本非凡 阅读(1842) 评论(0) 推荐(0) 编辑
摘要: 一、前言 上篇介绍了 ES 的同义词搜索,使我们的搜索更强大了,然而这还远远不够,在实际使用中还可能希望搜索「fanqie」能将包含「番茄」的结果也罗列出来,这就涉及到拼音搜索了,本篇将介绍如何具体实现。 二、安装 ES 拼音插件 2.1 拼音插件简介 GitHub 地址: "https://git 阅读全文
posted @ 2019-03-08 16:56 枫本非凡 阅读(1490) 评论(0) 推荐(0) 编辑
摘要: 一、前言 在日常开发中,除了正常的单元测试,某些情况我们还需要测试 HTTP 接口,团队中目前使用的是「 Postman 」这款 API调试 、 HTTP 请求工具。通常我们将经常要测试的接口按照项目归类,存放在 Postman 的收藏夹(即 Collections)中方便重复调用。然而,在多个环境 阅读全文
posted @ 2019-03-08 16:55 枫本非凡 阅读(3684) 评论(1) 推荐(1) 编辑
摘要: 一、前言 上篇介绍了接口文档工具 Swagger 及项目监控工具 JavaMelody 的集成过程,使项目更加健壮。在 JAVA Web 项目某些场景中,我们需要用缓存解决如热点数据访问的性能问题,业界常用的中间件如 Memcached 、 Redis 等。相比 Memcached ,Redis 支 阅读全文
posted @ 2019-03-08 16:54 枫本非凡 阅读(2039) 评论(0) 推荐(1) 编辑
摘要: 一、前言 上篇介绍了 Logback 的集成过程,总体已经达到了基本可用的项目结构。本篇主要介绍两个常用工具,接口文档工具 Swagger 、项目监控工具 JavaMelody 的集成步骤。 二、Swagger 随着互联网技术的发展,现在的网站架构基本都由原来的后端渲染变成了前端渲染、前后端分离的形 阅读全文
posted @ 2019-03-08 16:52 枫本非凡 阅读(950) 评论(0) 推荐(0) 编辑