SpringBoot整合ElasticSearch7.6X

news/2024/7/10 1:52:20 标签: java, elasticsearch, vue, es

ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
在这里插入图片描述
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
在这里插入图片描述
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
关于索引的API操作详解
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
在这里插入图片描述
在这里插入图片描述
关于文档的API操作详解
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
在这里插入图片描述
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
在这里插入图片描述
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
查询小贴士
elasticsearch7.XQueryBuilders.termQuery()查询中文没有值?
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />

我的字段是 name 和 age
QueryBuilder queryBuilder = QueryBuilders.termQuery(“name.keyword”, “淘宝”);
name 是你的字段名 其实真正的精准搜索值在字段名在的keyword
但是这种方式下,你必须输入完整的 字段名字,缺少一部分都会查不出来
这种方式不好

所以使用:matchPhraseQuery 实现精准查询

 MatchPhraseQueryBuilder title = QueryBuilders.matchPhraseQuery("title", keyword);

也可以使用:matchPhrasePrefixQuery

QueryBuilders.matchPhrasePrefixQuery(“supplierName”,param)

matchPhraseQuery和matchQuery等的区别,在使用matchQuery等时,在执行查询时,搜索的词会被分词器分词,而使用matchPhraseQuery时,不会被分词器分词,而是直接以一个短语的形式查询,而如果你在创建索引所使用的field的value中没有这么一个短语(顺序无差,且连接在一起),那么将查询不出任何结果。

java rest client中调用elasticsearch中的数据,精准匹配的termQuery查不到数据,这个问题是java rest client客户端自带的bug,换用matchPhraseQuery直接替换即可。有点坑!
在elastic权威指南一书中是这样给出建议的:"匹配查询 match 是个 核心 查询。无论需要查询什么字段, match
查询都应该会是首选的查询方式。它是一个高级 全文查询
,这表示它既能处理全文字段,又能处理精确字段。"这就意味着match查询是高级查询,底层使用了term查询。
结论:相关度查询使用match,精确字段查询使用matchPhrase即可。

在这里插入图片描述

在这里插入图片描述
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
在这里插入图片描述
抽取工具类
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
工具类改造
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
测试
在这里插入图片描述
业务层
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
控制层

ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
搜索业务层
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
搜索控制层
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
前端(基于VUE)
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />

ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
在这里插入图片描述
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
在这里插入图片描述
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
搜索高亮显示
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
ess=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0hCbGl1Y2hlbmc=,size_16,color_FFFFFF,t_70" alt="在这里插入图片描述" />
高亮前端修改
在这里插入图片描述


http://www.niftyadmin.cn/n/1466108.html

相关文章

Java Arrays类的用法

import java.util.Arrays;public class ArraysTest {public static void main(String[] args){//定义一个a数组var a new int[]{3,4,5,6};//定义一个a2shuzvar a2 new int[]{3,4,5,6};//a和a2数组长度相等,每个元素依次相等,将输出trueSystem.out.prin…

Java浮点数转化为人民币读法字符串

Java浮点数转化为人民币读法字符串效果图(零的处理有点复杂)主要思路效果图(零的处理有点复杂) 效果是出来了,但是觉得代码好臃肿 主要思路 整数部分比较难处理 1、把12位整数划分为3组一组4位数字 2、分别遍历这…

SpringCloud+Nacos1.4.2+Seata1.3.0实现分布式事务以及踩坑总结

文章目录前言一、分布式事务问题二、Seata简介1,是什么2,能干嘛3,去哪下4,怎么玩三、Seata-Server安装1,官网地址2,下载版本3,解压修改file.conf文件4,数据库新建seata库5&#xff0…

Java 控制台五子棋游戏

Java 控制台五子棋游戏思路效果代码思路 这是疯狂java第四章习题: 难点: 如何遍历左斜线和右斜线的棋子怎么判断5个棋子连在一起了 这里通过设置两个计数器(countBlack和countWhite)遇到黑子countBlack加1,清零count…

记录 svn 安装卸载时出现 tortoise svn提示invalid drive G:\

问题描述: 安装svn时出现 tortoise svn提示invalid drive G:\,尝试卸载也出现同样的错误 原因分析: 是因为以前把这个svn软件安装到了G盘,我在盘分区时把这个G盘删除了,再次安装时安装程序找不到G盘 解决方案&…

idea自定义注释快捷键脚本

idea自定义注释快捷键 *** description* author liucheng* date $date$ $time$$params$* throws */params设置 groovyScript("def result; def params\"${_1}\".replaceAll([\\\\[|\\\\]|\\\\s], ).split(,).toList(); for(i 0; i < params.size(); i) {if…

Java 基础练习:控制台画圆,画等腰三角,乘法表

Java 基础练习&#xff1a;控制台画圆&#xff0c;画等腰三角&#xff0c;乘法表画圆效果代码画等腰三角形效果代码乘法表效果代码画圆 效果 代码 package FourPointSeven;public class Circular {public static void main(String[] args) {paintCircular(6);}/*** 控制台输出…

老司机总结的12条 SQL 优化方案(非常实用)

转载链接 https://mp.weixin.qq.com/s/Mviu-knpLVPW8c4o_bN3Tg 文章目录前言一、SQL语句及索引的优化&#xff1f;1. 尽量避免使用子查询2. 用IN来替换OR3. 读取适当的记录LIMIT M,N&#xff0c;而不要读多余的记录4. 禁止不必要的Order By排序5. 总和查询可以禁止排重用union …