添加依赖
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-client</artifactId>
<version>7.6.2</version>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>7.6.2</version>
<exclusions>
<exclusion>
<artifactId>elasticsearch-rest-client</artifactId>
<groupId>org.elasticsearch.client</groupId>
</exclusion>
<exclusion>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>7.6.2</version>
</dependency>
配置端口和地址
@Configuration
public class ESConfig {
@Bean
public RestHighLevelClient restHighLevelClient(){
RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(
new HttpHost("192.168.8.125", 9200, "http")));
return client;
}
}
测试
package com.kv.es.service.impl;
import com.kv.es.model.SearchQuery;
import com.kv.es.service.SearchService;
import org.elasticsearch.action.get.GetRequest;
import org.elasticsearch.action.get.GetResponse;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestHighLevelClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.io.IOException;
@Service
public class SearchServiceImpl implements SearchService {
@Autowired
private RestHighLevelClient restHighLevelClient;
@Override
public void search(SearchQuery searchQuery) {
GetRequest request = new GetRequest().index("knowledge_base").id("1");
try {
GetResponse response = restHighLevelClient.get(request, RequestOptions.DEFAULT);
System.out.println("_index:"+response.getIndex());
System.out.println("_type:"+response.getType());
System.out.println("_id:"+response.getId());
System.out.println("source:"+response.getSourceAsString());
} catch (IOException e) {
e.printStackTrace();
}
}
}