安装Elasticsearch
Spring-data-elasticsearch是Spring提供的操作ElasticSearch的数据层,封装了大量的基础操作,通过它可以很方便的操作ElasticSearch的数据。
版本说明
这有一个对应关系,不过不太完整。目前已经更新到6版本多,请自行匹配。
spring data elasticsearch | elasticsearch |
3.0.0.RC1 | 5.5.0 |
3.0.0.M4 | 5.4.0 |
2.0.4.RELEASE | 2.4.0 |
2.0.0.RELEASE | 2.2.0 |
1.4.0.M1 | 1.7.3 |
1.3.0.RELEASE | 1.5.2 |
1.2.0.RELEASE | 1.4.4 |
1.1.0.RELEASE | 1.3.2 |
1.0.0.RELEASE | 1.1.1 |
一、安装JDK
Elasticsearch的运行需要java环境,我的JDK版本为1.8_201,网上有很多安装JDK教程,这里就不多说了。
二、下载Elasticsearch
- 新建文件夹
在 D 盘根目录下新建 ElasticSearchServer 文件夹
安装 java 系的软件,建议全路径不带 空格
例如:如果将这里的 ElasticSearchServer 改为 ElasticSearch Server ,ik 分词器就会报错
- 下载 Elasticsearch 压缩包
官方网站地址为:https://www.elastic.co/downloads/elasticsearch
因为是 windows 环境,所以选择 ZIP 文件
下载好解压到自己所建文件夹,运行bin目录下 elasticsearch.bat 文件就可以了!是不是很简单?
安装smartcn分词器
首先进入elasticsearch的bin目录
Linux用户执行 # sh elasticsearch-plugin install analysis-smartcn
Windows用户执行> elasticsearch-plugin install analysis-smartcn
安装完重启ES。搞定。
项目中使用smartcn分词器
- 在要存入ES的POJO中对需要建立分词的列配置 @Field 如下:
- 查询如下:使用QueryBuilder查询
- 创建9条数据 搜索关键词“集合”
- 使用ES默认分词查询 结果如下 所有包含 “集” 或者 “合” 的数据都查询出来了,容易造成搜索结果与所想的差度太大
- 使用smartcn查询 结果如下 包含 “集合” 该词的数据才会被查询出来
有问题可以在评论留言,一起学习,共同进步。