springboot默认支持两种技术和es进行交互
1、jest(默认不生效)
*环境(全局配置文件)
*需要导入io.searchbox.client.JestClient工具包
<dependency>
<groupId>io.searchbox</groupId>
<artifactId>jest</artifactId>
<version>5.3.2</version>
</dependency>
*配置文件中配置主机地址
spring.elasticsearch.jest.uris=http://192.168.3.11:9200
*实现步骤
*注入JestClient到测试类
*编写测试方法
*创建和封装实体类属性
*构建索引功能
Index index = new Index.Builder(article).index("angugui").type("news").build();
*执行
jestClient.execute(index);
2、Spring Data ElasticSearch
*可能会遇见的问题[es版本可能不合适,连接超时]
*https://github.com/spring-projects/spring-data-elasticsearch查看对应版本号问题
*解决方案
*升级spingboot版本
*安装对应的ES版本
*环境配置(全局配置文件)
*1)Client clusterNodes : clusterName
spring.data.elasticsearch.cluster-name=elasticsearch
*2)ElasticSearchTemplate 操作es
spring.data.elasticsearch.cluster-nodes=http://192.168.3.11:9300
*3、编写一个ElasticserchRepository的子接口来实现es
3、两种用法https://github.com/spring-projects/spring-data-elasticsearch
*、编写一个ElasticsearchRepository接口,使用规则和JpaReponsitory一样
*注意:要在封装的实体类上加上这个@Document(indexName = "angugui",type = "book")
*、使用ElasticsearchTemplate and ElasticsearchRestTemplate实现
*直接在测试类中注入实现
*语法参考https://github.com/spring-projects/spring-data-elasticsearch中ElasticsearchTemplate实现