《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门,即可获取!
@Configuration
public class ElasticsearchConfiguration {
@Value(“${elasticsearch.host}”)
private String host;
@Value(“${elasticsearch.port}”)
private int port;
@Value(“${elasticsearch.connTimeout}”)
private int connTimeout;
@Value(“${elasticsearch.socketTimeout}”)
private int socketTimeout;
@Value(“${elasticsearch.connectionRequestTimeout}”)
private int connectionRequestTimeout;
@Bean(destroyMethod = “close”, name = “client”)
public RestHighLevelClient initRestClient() {
RestClientBuilder builder = RestClient.builder(new HttpHost(host, port))
.setRequestConfigCallback(requestConfigBuilder -> requestConfigBuilder
.setConnectTimeout(connTimeout)
.setSocketTimeout(socketTimeout)
.setConnectionRequestTimeout(connectionRequestTimeout));
return new RestHighLevelClient(builder);
}
}
定义文档实体类
首先在 constant
包下定义常量接口,在接口中定义索引的名字为 user
:
public interface Constant {
String INDEX = “user”;
}
然后在 document
包下创建一个文档实体类:
public class UserDocument {
private String id;
private String name;
private String sex;
private Integer age;
private String city;
// 省略 getter/setter
}
ES 基本操作
在这里主要介绍 ES 的索引、文档、搜索相关的简单操作,在 service
包下创建 UserService
类。
索引操作
在这里演示创建索引和删除索引:
创建索引
在创建索引的时候可以在 CreateIndexRequest
中设置索引名称、分片数、副本数以及 mappings,在这里索引名称为 user
,分片数 number_of_shards
为 1,