在我的代码库中,我有两个用于在Elastic上搜索的代码。

  • 一种方法是通过ElasticSearchTemplte从那里构建 flex 查询并在Elastic上进行查询。
  • 在第二个中,我通过spring-data-jpa查询。

  • 在第一种情况下,我可以看到我的 flex 搜索查询,并且可以直接在ES上查询。

    我的问题是
    有什么方法可以从spring-data-jpa获取该 flex 查询。

    我想看看什么spring-data-jpa在查询ES之前正在构建查询。

    最佳答案

    带有Query-Dsl的Spring-boot提供了 flex 搜索。关注this。和这个tutorial在依赖项和插件下面

    <dependency>
      <groupId>com.querydsl</groupId>
      <artifactId>querydsl-jpa</artifactId>
      <version>${querydsl.version}</version>
    </dependency>
    
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>1.6.1</version>
    </dependency>
    
    
    <project>
      <build>
        <plugins>
          ...
          <plugin>
            <groupId>com.mysema.maven</groupId>
            <artifactId>apt-maven-plugin</artifactId>
            <version>1.1.3</version>
            <executions>
              <execution>
                <goals>
                  <goal>process</goal>
                </goals>
                <configuration>
                  <outputDirectory>target/generated-sources/java</outputDirectory>
                  <processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor>
                </configuration>
              </execution>
            </executions>
            <dependencies>
              <dependency>
                <groupId>com.querydsl</groupId>
                <artifactId>querydsl-apt</artifactId>
                <version>${querydsl.version}</version>
              </dependency>
            </dependencies>
          </plugin>
          ...
        </plugins>
      </build>
    </project>
    

    关于elasticsearch - 从 Spring 数据Jpa获取 Elasticsearch 查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48266690/

    10-11 08:51