ElasticSearch安装分词器与整合SpringBoot

news2025/2/22 7:25:45

ElasticSearch安装分词器与整合SpringBoot在这里插入图片描述

如果还没安装的点击安装ElasticSearch查看怎么安装

分词器

1.分词器

在Elasticsearch中,分词器(Tokenizer)是分析器(Analyzer)的一部分,它的主要职责是将文本输入(如字符串)分割成一系列的词元(tokens)。这些词元是搜索和索引的基础单元。

分词器的作用
  • 分割文本:将输入文本按照特定的规则分割成独立的词元。
  • 记录位置信息:为每个词元记录其在原始文本中的位置信息,如起始和结束字符偏移量。
  • 记录词元顺序:确定词元的顺序,这对于短语查询和词近邻查询非常重要。
内置分词器
  • Whitespace Tokenizer:按空白字符分割文本。
  • Standard Tokenizer:基于Unicode字符属性进行分词,类似于Java的String.split方法。
  • Punctuation Tokenizer:按标点符号分割文本。
  • Keyword Tokenizer:不进行分词,将整个输入文本作为一个词元。
  • Pattern Tokenizer:使用正则表达式进行分词。

2.ik分词器

在这里插入图片描述

  • 点击下载:注意你是什么版本的下什么版本,如:我的elasticsearch是7.6.2就下7.6.2
  • 解压后找到你的/usr/share/elasticsearch/plugins挂载的目录下,例如:
#当初我挂载的是/docker/elasticsearch/plugins
-v /docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins
  • 把解压后得到的ik目录放入plugins,只要ik目录,别是ik/ik/
  • 重启

3.测试分词器

  • 使用默认
POST _analyze
{ 
	"text": "我是中国人"
}
  • 使用分词器
POST _analyze
{ 
	"analyzer": "ik_smart", 
	"text": "我是中国人"
}
  • 另外一个分词器ik_max_word
POST _analyze
{ 
	"analyzer": "ik_max_word", 
	"text": "我是中国人"
}

观察结果,就可以看出使用分词器之后的区别了

整合SpringBoot

Elasticsearch-Rest-Client

3.Maven导入
<dependency>
	<groupId>org.elasticsearch.client</groupId>
	<artifactId>elasticsearch-rest-high-level-client</artifactId>
	<version>7.6.2</version>
</dependency>
2.配置
@Bean
RestHighLevelClient client() {
RestClientBuilder builder = RestClient.builder(new HttpHost("<你的虚拟机ip>", 9200, "http"));
return new RestHighLevelClient(builder);
}
3.测试
@Test
void test1() throws IOException {
	IndexRequest request = new IndexRequest("test").id("20").source("name","中国","id",20L);
	try {
		IndexResponse response = client.index(request, RequestOptions.DEFAULT);
		System.out.println(request.toString());
		IndexResponse response2 = client.index(request, RequestOptions.DEFAULT);
	} catch (ElasticsearchException e) {
		if (e.status() == RestStatus.CONFLICT) {
		}
	}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2169139.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySql简介及发展

MySql简介及发展 1、MySql起源和分支 MySQL 是最流行的关系型数据库软件之一&#xff0c;由于其体积小、速度快、开源免费、简单易用、维护成本 低等&#xff0c;在集群架构中易于扩展、高可用&#xff0c;因此深受开发者和企业的欢迎。 Oracle和MySQL是世界市场占比最高的两…

C#图像处理学习笔记(屏幕截取,打开保存图像、旋转图像、黑白、马赛克、降低亮度、浮雕)

1、创建Form窗体应用程序 打开VS&#xff0c;创建新项目-语言选择C#-Window窗体应用&#xff08;.NET Framework) 如果找不到&#xff0c;检查一下有没有安装.NET 桌面开发模块&#xff0c;如果没有&#xff0c;需要下载&#xff0c;记得勾选相关开发工具 接上一步&#xff0c;…

【ARM 嵌入式 编译系列 10.4 -- GNU Binary Utilies】

文章目录 GNU Binary Utilities 详细介绍常用工具介绍1. arm-none-eabi-objcopy2. arm-none-eabi-readelf3. arm-none-eabi-size4. arm-none-eabi-objdump5. arm-none-eabi-nm6. arm-none-eabi-strip7. arm-none-eabi-ld8. arm-none-eabi-as9. arm-none-eabi-addr2line10. arm-…

linux内核双向链表使用list klist

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、list和klist是什么&#xff1f;二、代码示例1.list2.klist 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; linux内核中大量使…

Spring Boot打造甘肃非遗文化传承网站

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本甘肃非物质文化网站就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信…

如何像专家一样修复任何 iPhone 上的“iPhone 已禁用”错误

“我忘记了密码&#xff0c;并且我的 iPhone 在多次输入错误密码后就被禁用了&#xff0c;如何再次访问我的手机&#xff1f;” 作为最安全的数字设备之一&#xff0c;iPhone 必须使用正确的密码解锁。即使您可以使用 Face ID 或 Touch ID 访问您的设备&#xff0c;在充电或重…

交警车辆通入城行证管理建设方案和必要性-———未来之窗行业应用跨平台架构

一、系统目标 建立一个高效、便捷、规范的车辆入城通行证管理系统&#xff0c;提高交警部门的管理效率&#xff0c;优化城市交通流量&#xff0c;减少交通拥堵&#xff0c;保障城市交通安全。 二、系统功能模块 1. 通行证申请模块 - 提供在线申请入口&#xff0c;申请人填…

【MySQL】聚合函数、group by子句

目录 聚合函数 count([distinct] column) sum([distinct] column) avg([distinct] column) max([distinct] column) min([distinct] column) group by子句 1.如何显示每个部门的平均薪资和最高薪资 2.显示每个部门每种岗位的平均薪资和最低薪资 3.显示平均工资低于200…

maven给springboot项目打成jar包 maven springboot打包配置

基于maven的spring boot 打包分离依赖及配置文件 使用springCloud或springboot的过程中&#xff0c;发布到生产环境的网速受限&#xff0c;如果每次将60,70M甚至更大的jar包上传&#xff0c;速度太慢了&#xff0c;采取jar包和配置文件分离的方式可以极大的压缩jar包大小&#…

npm 安装newman时idealTree:vue: sill idealTree buildDeps卡住了(实测成功)

删除 C:\Users\{账户}\ 文件夹中的 .npmrc 文件在命令提示符里执行 npm cache verify 在命令提示符里执行 npm config set registry https://registry.npmmirror.com 切换淘宝源来源&#xff1a; https://blog.csdn.net/weixin_39245942/article/details/135748323

【Verilog学习日常】—牛客网刷题—Verilog企业真题—VL62

序列发生器 描述 编写一个模块&#xff0c;实现循环输出序列001011。 模块的接口信号图如下&#xff1a; 要求使用Verilog HDL实现&#xff0c;并编写testbench验证模块的功能。 输入描述&#xff1a; clk&#xff1a;时钟信号 rst_n&#xff1a;复位信号&#xff0c;低电平…

【学习笔记】手写 Tomcat 七

目录 一、优化 Dao 1. 设置 UserDaoImpl 为单例模式 2. 创建 Dao 工厂 3. 在 Service 层获取 UserDao 的实例 二、优化 Service 1. 设置 UserServiceImpl 为单例模式 2. 创建 Service 工厂 3. 在 Servlet 层获取 Service 实现类的对象 三、优化 Servlet 1. 使用配置…

Map+Set

我们前面接触过的string、vector、list这些都算序列式容器&#xff0c;它们都有一定的关联性&#xff0c;即使随便换位置也无伤大雅&#xff0c;因为是它们靠位置顺序来保存的。但是今天的MapSet就不是了&#xff0c;它们算关联式容器&#xff0c;两个位置之间有紧密的联系&…

Linux-df命令使用方法

Linux-df&#xff08;disk filesystem&#xff09;命令 df 命令是 Unix 和 Linux 系统中用于报告文件系统磁盘空间使用情况的工具。 df [OPTION]... [FILE]...OPTION 常用选项&#xff08;博主一般df -h用的较多&#xff0c;可读性较好&#xff09; -h&#xff1a;以人类可读的…

Uniapp 微信小程序 最新 获取用户头像 和 昵称 方法 有效可用

文章目录 前言代码实现运行效果技术分析 前言 同事有个需求 授权获取用户头像 和 昵称 。之前做过线上小程序发版上线流程 就实现了下 最新的方法和 api 有些变化 记录下 代码实现 先直接上代码 <template><view class"container"><buttonclass&qu…

如何部署北斗定位应用,基于国产自主架构LS2K1000LA-i处理器平台

北斗卫星导航系统(以下简称北斗系统)是着眼于国内经济社会发展需要,自主建设、独立运行的卫星导航系统。经过多年发展,北斗系统已成为面向全球用户提供全天候、全天时、高精度定位、导航与授时服务的重要新型基础设施。 图 1 北斗定位系统的应用优势 强可控:北斗系统是国…

Ollama本地部署大模型及应用

文章目录 前言一、下载安装1.Mac2.Windows3.linux4.docker5.修改配置&#xff08;可选&#xff09;1.linux系统2.window 系统3.mac系统 二、Ollama使用1.命令2.模型下载3.自定义模型4.API 服务 三、Open WebUI 使用四、Dify使用 前言 Ollama 是一个专注于本地部署大型语言模型…

第四届摩纳哥智能化可持续发展游艇码头交流会

第四届摩纳哥智能化可持续发展游艇码头交流会 游艇生态和经济转型 2024年9月23日&#xff0c;第四届摩纳哥智能化可持续发展游艇码头交流会于摩纳哥游艇俱乐部顺利落幕。该交流会由摩纳哥游艇码头顾问公司&#xff08;M3&#xff09;主办&#xff0c;吸引了全球250名游艇行业领…

数据集-目标检测系列-口罩检测数据集 mask>> DataBall

数据集-目标检测系列-口罩检测数据集 mask>> DataBall 数据集-目标检测系列-口罩检测数据集 mask 数据量&#xff1a;1W DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;享有百种数据集&#xff0c;持续增加中。 数据项目地址&#xff1a; gitcode: https…

JAVA笔记 | 实际上用到的策略模式(可直接套用)

自己开发中用到了策略模式&#xff0c;这样写不一定是最好的&#xff0c;但是满足了业务场景跟使用要求&#xff0c;做个笔记&#xff0c;下次有用到可以快速复习跟套用 假设使用场景&#xff1a;有几只宠物&#xff0c;猫跟狗等&#xff0c;要求他们做各种动作&#xff0c;比如…