Java 使用特定分析器在Hibernate中执行搜索

Java 使用特定分析器在Hibernate中执行搜索,java,hibernate,jpa,lucene,hibernate-search,Java,Hibernate,Jpa,Lucene,Hibernate Search,从 如何使用与上面搜索的字段或实体不同的特定分析器?您可以通过以下方式覆盖用于特定字段或实体的分析器 QueryBuilder qb = fullTextEntityManager.getSearchFactory() .buildQueryBuilder().forEntity(Book.class) .overridesForField("title","analyzerName") .get(); 注意:要覆盖多个字段,可以再次使用相同的


如何使用与上面搜索的字段或实体不同的特定分析器?

您可以通过以下方式覆盖用于特定字段或实体的分析器

 QueryBuilder qb = fullTextEntityManager.getSearchFactory()
        .buildQueryBuilder().forEntity(Book.class)
        .overridesForField("title","analyzerName")
        .get();
注意:要覆盖多个字段,可以再次使用相同的调用,因为
overridesForField
方法本身返回entityContext

像这样的

QueryBuilder qb = fullTextEntityManager.getSearchFactory()
            .buildQueryBuilder().forEntity(Book.class)
            .overridesForField("title","analyzerName")
            .overridesForField("subtitle","analyzerName2")
            .get();
以下是[文档](,java.lang.String))

QueryBuilder qb = fullTextEntityManager.getSearchFactory()
            .buildQueryBuilder().forEntity(Book.class)
            .overridesForField("title","analyzerName")
            .overridesForField("subtitle","analyzerName2")
            .get();