SpringBoot整合ES,ik分词器

"reason": "Failed to parse mapping: analyzer [ik_max_word] has not been configured in mappings"

 这是因为没有安装ES的IK分词器

下载地址 Release v8.7.0 · medcl/elasticsearch-analysis-ik · GitHub

ElasticSearch 内置了分词器,如标准分词器、简单分词器、空白词器等。但这些分词器对我们最常使用的中文并不友好,不能按我们的语言习惯进行分词。

ik分词器就是一个标准的中文分词器。它可以根据定义的字典对域进行分词,并且支持用户配置自己的字典,所以它除了可以按通用的习惯分词外,我们还可以定制化分词。

ik分词器是一个插件包,我们可以用插件的方式将它接入到ES。

一、安装

1.1 下载

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot是一个用于快速构建Java应用程序的开发框架,而IK分词器是一个开源的中文分词工具。将IK分词器集成到Spring Boot项目中可以实现中文文本的分词功能。 要在Spring Boot项目中集成IK分词器,可以按照以下步骤进行操作: 1. 在项目的pom.xml文件中添加IK分词器的依赖: ```xml <dependency> <groupId>org.wltea</groupId> <artifactId>ik-analyzer</artifactId> <version>5.5.1</version> </dependency> ``` 2. 创建一个配置类,用于配置IK分词器的相关参数。可以在该配置类中设置分词器的字典路径、扩展字典路径等。例如: ```java @Configuration public class IKAnalyzerConfig { @Value("${ik.analyzer.dict.path}") private String dictPath; @Value("${ik.analyzer.ext.dict.path}") private String extDictPath; @Bean public Analyzer analyzer() { return new IKAnalyzer(true); } @PostConstruct public void init() { // 设置字典路径 System.setProperty("ik.analyzer.dict.path", dictPath); // 设置扩展字典路径 System.setProperty("ik.analyzer.ext.dict.path", extDictPath); } } ``` 3. 在需要使用分词功能的地方,注入`Analyzer`对象,并使用其进行分词。例如: ```java @Autowired private Analyzer analyzer; public List<String> analyze(String text) throws IOException { List<String> result = new ArrayList<>(); TokenStream tokenStream = analyzer.tokenStream(null, new StringReader(text)); CharTermAttribute charTermAttribute = tokenStream.addAttribute(CharTermAttribute.class); tokenStream.reset(); while (tokenStream.incrementToken()) { result.add(charTermAttribute.toString()); } tokenStream.close(); return result; } ``` 以上就是将IK分词器集成到Spring Boot项目中的基本步骤。通过配置和使用`Analyzer`对象,可以实现对中文文本的分词功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值