分享好友 最新动态首页 最新动态分类 切换频道
SpringBoot整合ElasticSearch实现自动补全以及搜索关键字高亮
2024-12-26 13:10

目录

SpringBoot整合ElasticSearch实现自动补全以及搜索关键字高亮

一、项目前准备

1、了解什么是ElasticSearch

2、配置docker环境

3、安装ElasticSearch镜像

3.1 dockerHub上安装

4、安装kibana镜像

5、安装ik分词器

6、安装拼音分词器

7、编写对应数据库的索引

二、JAVA代码的配置。

1、导入依赖

2、添加数据到创建好的文档里

2.1 配置es客户端的bean 添加到主启动类里面

 2.2 批量导入文件到es里面

3、编写查询语句

4、测试结果 


:在进行之前、小编默认你有一些es的基础能力,可以简单编写DSL语句

Elasticsearch是一个开源的分布式搜索和分析引擎,它是建立在Apache Lucene搜索引擎库之上的。Elasticsearch提供了一个RESTful API,用于实时地存储、搜索和分析大量数据。它被广泛用于构建实时搜索、日志分析、应用程序性能监控等各种用例中。

Elasticsearch具有以下特点

  1. 分布式架构:可以轻松地扩展到多个节点,实现高可用性和水平扩展。
  2. 实时搜索:支持实时索引和搜索,能够快速地处理大量数据。
  3. 多种数据类型支持:除了全文搜索外,还支持结构化数据、地理空间数据等多种数据类型的搜索和分析。
  4. 强大的聚合功能:能够进行复杂的数据聚合和分析操作。
  5. 插件生态系统:有丰富的插件和工具可用于扩展和定制Elasticsearch的功能。

总的来说,Elasticsearch是一个功能强大、灵活且易于扩展的搜索和分析引擎,适用于各种大规模数据处理和搜索场景。例如京东、淘宝、百度、携程等大型软件都是采用这门技术。

在我有一篇文章里提到了如何安装docker  地址:关于docker-compose在linux上的集群部署_linux使用compose部署-CSDN博客

3.1 dockerHub上安装

这里自己选择版本 把代码放到linux上面运行就OK 就拉去好镜像了 

这里我们采用elasticsearch的7.12.1版本的镜像,这个镜像体积非常大,接近1G。建议大家和我的保持一致

运行ElasticSearch

官网上是有文档教程的 大家可以去看

因为我们还需要部署kibana容器,因此需要让es和kibana容器互联。这里先创建一个网络

 

 我这里直接写了 

 
 

同上步骤  这里不用多解释

启动方式

 
 

可以看到两个镜像均是拉去下来了

接下来执行以上命令便可以跑起来了。

 在浏览器输入你的虚拟机ip+端口 例如 我的es是

kibana是

点击devops就可以进入dsl语句书写界面了。

可以在github上去下载 也可用提供的资料 资料放在末尾 官网 https://github.com/infinilabs/analysis-ik

同上:官网

https://github.com/infinilabs/analysis-pinyin

将下载好的压缩包 解压放到es目录下

 -v es-plugins:/usr/share/elasticsearch/plugins 就在刚刚启动挂载的容器卷下。

如果急记不得 输入以下指令

 

 就会显现容器卷的 然后查找它所在的位置即可

7.1数据库表的字段

建立的索引为

 

 执行

 
 

出现这样便是创建成功:自己可以添加点数据测试一下 这里就大家自己去测试吧

默认创建好项目

 

注意:因为spring项目依赖里默认有es的 所以需要把版本修改了 

 

版本和自己pull的版本一定要对应 一定要对应、一定要对应,重要的是说三遍! 

2.1 配置es客户端的bean 添加到主启动类里面

 

 2.2 批量导入文件到es里面

 

这里需要再字段里面定义suggestion属性 做自动补全的字段。 

例如

 

这里用mybatis去查询 以及查询就不多说了  

去控制台查询一下结果

共有八百多条数据 并且也有suggestion字段 

自动补全的代码 接受一个key的参数 字符串类型

service层的代码为

 
 
 

可以看到是可以自动补全词条的这里

在测试根据搜索结果高亮显示

可以看到搜索的关键词也是被<em>标签包裹着的 到时后只需要给标签设置颜色即可。

最新文章
aigc工程师和ai应用工程师有什么区别
岗位职责:1、利用 AIGC 工具(如 ChatGPT、Midjourney 等)生成各种类型的文本、图像、音频、视频等内容,包括但不限于文章、故事、广告语、海报、音乐片段、短视频等;2、对接外部供应链,围绕用户需求和产品AI场景应用,根据业务变化、
2024年四大免费AI辅助写作软件,你值得拥有!
随着人工智能技术的发展,AI写作正在成为一股不可忽视的力量,它不仅能够帮助我们提升写作效率,还能激发无限创意。今天,就让我们一起走进“AI写作”的新纪元,探寻那些正在改变我们创作方式的秘密武器。直达链接(复制到浏览器打开):ib
2024年免费SEO优化软件:用户评价高、实用性强
下面给大家推荐几款好用的免费的SEO优化软件,有需要的小伙伴们来了解一下。超级监控客户端是一款功能强大的网站监控软件。它提供了实时更新和数据变更浮窗通知的功能,可以帮助用户实时监测网站列表、网络收录、网络反链、网络关键词排名
2025年山东省职业院校技能大赛高职组信息安全管理与评估样题
模块一:网络平台搭建与设备安全防护一、 比赛时间本阶段比赛时长为240分钟。二、 赛项信息三、 赛项内容本次大赛,各位选手需要完成三个阶段的任务,每个阶段需要按裁判组专门提供的U盘中的“信息安全管理与评估竞赛答题卡-模块X”提交答
2024 年 12月 13 日 随笔档案
摘要:腾讯云 AI 代码助手是一款革命性的编码辅助工具,它在程序员编写代码时发挥着至关重要的作用——预测并提供下一句或下一段代码的建议。你可能会疑惑,既然 IDE已经具备基本的代码补全功能,为何还需要 AI 代码助手呢?这里的关键在于
99.6%屏占比只是冰山一角 vivo NEX 3 5G评测
对于 Max这样一部常规升级、毫无亮点的旗舰,我默默看完苹果尴尬而糟糕的文案,默默说了个“哦”字。是啊,现在智能市场似乎已经翻不起任何波澜了呢。然而当我看到9月16号, 5G的发布会时才发现,科技公司落后就是原罪,苹果没有的想象力,
12月前两周芜湖二手房挂牌均价8780元/平 环比下跌0.79%
据房天下研究院监测,12月前两周芜湖二手房挂牌均价为8780元/平方米,环比下跌0.79%。12月前两周芜湖二手房各区县搜索排行榜中,弋江、镜湖、无为占据热搜区县榜TOP3;弋江瀂港的万科海上传奇笑傲楼盘关注度榜单;价格方面,网友关注度主要
2022免费的字幕识别软件大全 热门字幕识别软件推荐
可以识别字幕的软件有哪几款?今天小编将针对2022免费的字幕识别软件大全的内容,详细的为大家推荐十款同类型手机应用。在这些同类型的应用当中,都可以快速帮助用户进行字幕识别,感兴趣的用户可以仔细阅读今天的应用推荐内容。1、《爱字
'掌握AI写作精髓:智写AI剧本创作全攻略'
随着人工智能技术的飞速发展写作已成为创意产业中的一股新兴力量。智写作为其中的佼佼者为广大创作者提供了高效、便捷的剧本创作工具。那么怎么样运用智写写出高优劣的剧本呢?本文将为您揭秘智写写作剧本的精髓助您轻松掌握剧本创作全攻略
baka
感谢您对我方的信任,我们将按照法律法规要求,采取严格的安全保护措施,保护您的个人隐私信息。在此,我们郑重的提醒您:1.在您使用我方提供的服务时,建议您详细阅读本用户隐私政策,详细了解我方收集,存储,使用,披露和保护您的个人信
相关文章
推荐文章
发表评论
0评