在Spring Boot环境下使用SearchSourceBuilder进行OR查询可以如下操作:

  1. 首先,导入Elasticsearch的相关依赖,例如使用Maven,在pom.xml中添加以下依赖:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
  1. 创建一个Elasticsearch的配置类,用于配置连接信息。例如:
@Configuration
public class ElasticsearchConfig {

    @Bean
    public RestHighLevelClient elasticsearchClient() {
        RestClientBuilder builder = RestClient.builder(
                new HttpHost("localhost", 9200, "http"));
        return new RestHighLevelClient(builder);
    }
}
  1. 创建一个Elasticsearch的Repository接口,用于定义查询方法。例如:
@Repository
public interface MyEntityRepository extends ElasticsearchRepository<MyEntity, String> {

    List<MyEntity> findByField1OrField2(String field1, String field2);
}
  1. 在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查询的一般步骤。根据具体需求,你可能需要根据自己的实体类和查询条件进行适当的修改。

Spring Boot Elasticsearch OR 查询 - 使用 SearchSourceBuilder 实现

原文地址: https://www.cveoy.top/t/topic/pUdw 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录