springboot整合elasticsearch-RestHighLevelClient api查询
1. 依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> </dependency> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId> <version>${elastic.version}</version> </dependency> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-client</artifactId> <version>${elastic.version}</version> </dependency> <dependency> <groupId>org.elasticsearch</groupId> <artifactId>elasticsearch</artifactId> <version>${elastic.version}</version> </dependency>
2. 连接
spring: elasticsearch: address: ip:port username: '' password: ''
public RestHighLevelClient elasticsearchClient() { final ClientConfiguration clientConfiguration = ClientConfiguration.builder() .connectedTo(elasticsearchUrl) .withBasicAuth(elasticsearchUsername, elasticsearchPassword)
.withSocketTimeout(10000) .build(); return RestClients.create(clientConfiguration).rest(); }
3. 查询
SearchRequest searchRequest = new SearchRequest(queryindex); BoolQueryBuilder boolQuery = QueryBuilders.boolQuery(); boolQuery.filter(QueryBuilders.matchPhraseQuery("field1", "value1")); boolQuery.filter(QueryBuilders.matchPhraseQuery("field2", "value2")); searchRequest.source().query(boolQuery); SearchResponse searchResponse = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT); searchResponse.getHits().getHits().getSourceAsString();
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?