Spring Boot Elasticsearch OR 查询 - 使用 SearchSourceBuilder 实现
在Spring Boot环境下使用SearchSourceBuilder进行OR查询可以如下操作:
- 首先,导入Elasticsearch的相关依赖,例如使用Maven,在pom.xml中添加以下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
- 创建一个Elasticsearch的配置类,用于配置连接信息。例如:
@Configuration
public class ElasticsearchConfig {
@Bean
public RestHighLevelClient elasticsearchClient() {
RestClientBuilder builder = RestClient.builder(
new HttpHost("localhost", 9200, "http"));
return new RestHighLevelClient(builder);
}
}
- 创建一个Elasticsearch的Repository接口,用于定义查询方法。例如:
@Repository
public interface MyEntityRepository extends ElasticsearchRepository<MyEntity, String> {
List<MyEntity> findByField1OrField2(String field1, String field2);
}
- 在Service或Controller中使用这个Repository进行OR查询。例如:
@Service
public class MyEntityService {
private final MyEntityRepository myEntityRepository;
public MyEntityService(MyEntityRepository myEntityRepository) {
this.myEntityRepository = myEntityRepository;
}
public List<MyEntity> searchByField1OrField2(String field1, String field2) {
return myEntityRepository.findByField1OrField2(field1, field2);
}
}
以上就是在Spring Boot环境下使用SearchSourceBuilder进行OR查询的一般步骤。根据具体需求,你可能需要根据自己的实体类和查询条件进行适当的修改。
原文地址: https://www.cveoy.top/t/topic/pUdw 著作权归作者所有。请勿转载和采集!