SpringBoot整合ElasticSearch自定义分词器Analyzer

这篇具有很好参考价值的文章主要介绍了SpringBoot整合ElasticSearch自定义分词器Analyzer。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Es内置的分词器有 standard、pattern、whitespace、stop等等;也可以下载ik插件,使用ik_smart 和 ik_max_word。网上也有很多相关文章,这里就不介绍了。

我总结了一下 SpringBoot 自定义 正则分词器 的方法,其他的类似。

1. 首先创建一个 setting.json 文件,放到 resources 目录下,用于自定义分词器。

配置文件名随意,我这里命名为settings.json,作用是将 url 中的 . 替换成 -

	{
	  "analysis": {
	    "analyzer": {
	      "url_analyzer": {
	        "tokenizer": "standard",
	        "char_filter": [
	          "url_char_filter"
	        ]
	      }
	    },
	    "char_filter": {
	      "url_char_filter": {
	        "type": "pattern_replace",
	        "pattern": "\\.",
	        "replacement": "-"
	      }
	    }
	  }
	}

2. 在实体类上加 @Setting 注解,填写settings.json的路径(由于我直接放到了resource目录下,所以路径直接填settings.json)

springboot分词器,elasticsearch,spring boot,java

3. 在对应的字段上,添加注解 @Field 就OK了(也可以手动配置mapping文件,我这里用注解的方式)

springboot分词器,elasticsearch,spring boot,java

4. 看一下效果

使用standard分词器,url没有被分词
springboot分词器,elasticsearch,spring boot,java

使用自定义的正则分词器,可以看到url已经被分词
springboot分词器,elasticsearch,spring boot,java文章来源地址https://www.toymoban.com/news/detail-574714.html

到了这里,关于SpringBoot整合ElasticSearch自定义分词器Analyzer的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ElasticSearch关于自定义分词器模糊检索数字+字母

    之前的系统由于一些表的数据已经达到1~2百万行的数据了,而且还在与日俱增,一些条件比较复杂的检索,已经明显感觉到比较慢,影响用户的使用体验。所以引入的ElasiticSearch进行检索优化,效果还是比较好的。因为之前都没有怎么涉及到模糊检索这一块需求,只是为了速

    2024年02月16日
    浏览(35)
  • docker 安装nginx 和 elasticsearch ik 自定义分词

    1、切换到/mydata 文件夹 创建 nginx 目录      mkdir nginx         2、运行 docker run --name nginx -p 80:80 -d nginx:1.22.0 3、复制docker 里面的nginx配置到  外面的nginx/conf 下面      docker cp nginx:/etc/nginx  /mydata/nginx 4、把 /mydata/nginx下面的nginx 改成conf     mv nginx/  conf 5、停nginx 删除dock

    2024年02月12日
    浏览(37)
  • ElasticSearch 数据聚合、自动补全(自定义分词器)、数据同步

    官方文档 = 聚合 https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations.html 聚合:对文档信息的统计、分类、运算。类似mysql sum、avg、count 桶(Bucket)聚合:用来对文档做分组 TermAggregation:按照文档字段值分组(相当于mysql group by) Date Histogram:按照日期阶梯分组,

    2024年02月12日
    浏览(35)
  • ElasticSearch 实现分词全文检索 - SpringBoot 完整实现 Demo

    需求 做一个类似百度的全文搜索功能 搜素自动补全(suggest) 分词全文搜索 所用的技术如下: ElasticSearch Kibana 管理界面 IK Analysis 分词器 SpringBoot 实现流程 可以通过 Canal 对 MySQL binlog 进行数据同步,或者 flink 或者 SpringBoot 直接往ES里添加数据 当前以 SpringBoot 直接代码同

    2024年02月03日
    浏览(43)
  • Elasticsearch基础,SpringBoot整合Elasticsearch

    Elasticsearch,简称为es,es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别(大数据时代)的数据。es也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通

    2024年01月19日
    浏览(46)
  • Java项目(二)--Springboot + ElasticSearch 构建博客检索系统(3)- 分词器介绍

    ES作为全文检索服务,势必要对原始的文本进行内容的拆分,才能进行有效的索引。而拆分原始内容到一个一个小的词,或语义单元,这部分的功能由ES的分词器去完成的。 常见分词器 standard:ES默认的分词器,会将词汇单元进行小写形式,并且去除一些停用词和标点符号等等

    2024年02月10日
    浏览(40)
  • 【ElasticSearch系列-05】SpringBoot整合elasticSearch

    ElasticSearch系列整体栏目 内容 链接地址 【一】ElasticSearch下载和安装 https://zhenghuisheng.blog.csdn.net/article/details/129260827 【二】ElasticSearch概念和基本操作 https://blog.csdn.net/zhenghuishengq/article/details/134121631 【三】ElasticSearch的高级查询Query DSL https://blog.csdn.net/zhenghuishengq/article/details/1

    2024年02月06日
    浏览(41)
  • ElasticSearch8 - SpringBoot整合ElasticSearch

    springboot 整合 ES 有两种方案,ES 官方提供的 Elasticsearch Java API Client 和 spring 提供的 [Spring Data Elasticsearch](Spring Data Elasticsearch) 两种方案各有优劣 Spring:高度封装,用着舒服。缺点是更新不及时,有可能无法使用 ES 的新 API ES 官方:更新及时,灵活,缺点是太灵活了,基本是一

    2024年03月25日
    浏览(97)
  • ElasticSearch基础3——聚合、补全、集群。黑马旅游检索高亮+自定义分词器+自动补全+前后端消息同步

    导航: 【黑马Java笔记+踩坑汇总】JavaSE+JavaWeb+SSM+SpringBoot+瑞吉外卖+SpringCloud/SpringCloudAlibaba+黑马旅游+谷粒商城  黑马旅游源码:  GitHub: GitHub - vincewm/hotel: 黑马旅游项目 Gitee: hotel: 黑马旅游项目 目录 1.数据聚合 1.1.聚合的种类 1.2.DSL实现聚合 1.2.1.Bucket聚合语法 1.2.2.聚合结果

    2023年04月16日
    浏览(83)
  • Elasticsearch是什么,如何学习Elasticsearch,整合SpringBoot

    目录 一、是什么Elasticsearch 二、Elasticsearch,整合SpringBoot 三、Elasticsearch的优势和应用场景   Elasticsearch是一个开源的搜索引擎,它采用Java语言编写,使用Lucene作为核心搜索引擎,并在其基础上构建了分布式的、可扩展的、实时的数据存储和分析引擎 。Elasticsearch最初由Shay B

    2024年02月16日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包