SpringBoot -- 集成Elasticsearch
来源:互联网 发布:新手程序员 私活 编辑:程序博客网 时间:2024/06/07 09:43
http://blog.csdn.net/cwenao/article/details/54943505
版权声明:本文为博主原创文章,转载、引用需署名作者以及注明文章出处。
目录(?)[+]
前置工作
- 当前服务器为CentOS6.5+ 64bit
新建 elasticsearch用户,ES无法用root启动
- useradd -d /usr/elasticsearch -g elastic -m elasticsearch
获取elasticsearch,本文用的v2.3.4 找到要获取的版本
- ES已经有5.x版本,然而Spring data目前还只支持ES2.x版本,Springdata支持ES版本说明
了解ES与mysql的对应关系
- index –> DB
- type –> Table
- Document –> row
安装Elasticsearch
用wget命令 获取elasticsearch后,直接解压到对应的目录中
修改 config下的elasticsearch.yml
配置 cluster.name、network.host
- 1
- 2
- 1
- 2
启动ES,bin目录下
- 1
- 1
Springboot集成ES
新建ES module,引入 spring-boot-starter-data-elasticsearch、spring-data-elasticsearch
build.gradle
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
在application.yml中配置ES信息
application.yml
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
创建 ES bean
用来查询获取对象,与mybatis差不多,唯独多了@Document与@Id 注解
AccountInfo.Java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
创建 Repository
用于数据查询,需要extends ElasticsearchRepository
ElasticAccountInfoRepository.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
创建 service
ESAccountInfoService.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
ESAccountInfoServiceImpl.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
创建controller
ESController.java
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
在apigateway工程配置path
bootstrap.yml
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
apigateway/mybatis 等集成参考前面文章
测试
- 依次启动 discovery、configserver、apigateway、esserver
- 访问 http://localhost:10002/esserver/esAccountInfo?id=a63126d074f04db587cd76a48c817510
更多的查询方式
- ElasticsearchRepository提供了很有用的查询构造器
- 比如查询 去重distinct : findDistinctAccountInfoById(String id)
- 比如条件组合 **AND/OR : findAccountInfoByIdAndAccountname(String id,accountname)
- 查询构造器会忽略 find..By 等前缀
代码
代码请移步 Github参考地址
如有疑问请加公众号(K171),如果觉得对您有帮助请 github start
0 0
- SpringBoot -- 集成Elasticsearch
- SpringBoot -- 集成Elasticsearch
- SpringBoot -- 集成Elasticsearch
- SpringBoot集成ElasticSearch
- springboot集成JestClient连接elasticsearch-5.x
- Elasticsearch查询配置(Elasticsearch+springboot)
- Elasticsearch实践(二)在Springboot微服务中集成搜索服务
- 七、ElasticSearch与SpringBoot的集成与JPA方法的使用
- SpringBoot整合ElasticSearch
- SpringBoot 调用Elasticsearch
- ElasticSearch整合springboot实战
- springboot 集成hibernate 集成struts2
- springboot elasticsearch 简单测试类
- elasticsearch中文分词集成
- elasticsearch 与 hive集成
- elasticsearch spring 集成
- elasticsearch spring 集成
- ElasticSearch集成拼音插件
- 在Linux上使用交换空间
- 微信开发学习中...(一)
- mac安装Redis,Redis Desktop Manager
- 二分查找
- 块级元素及行内元素
- SpringBoot -- 集成Elasticsearch
- 构造函数
- 洛谷 PP3373【模板】线段树 2
- HTTP权威指南读书笔记一:HTTP简介
- Sum Problem
- 竞赛图结论学习小结
- 控制对文件的访问
- struts中出现Java.lang.NoClassDefFoundError解决办法
- 关于des加密的神坑