我正在尝试使用来自Hibernate Search的QueryBuilder,其中的字段不是相应实体的属性,而是使用ClassBridge在运行中构建。我能这样做吗?
QueryBuilder qb = fullTextEntityManager.getSearchFactory().
buildQueryBuilder().forEntity(Publication.class).get();
....
Query query = qb.keyword().onField("title").matching("Lärm").createQuery();
字段“title”不是Publication类的一部分,但在Lucene索引中可用(并且可搜索)。
更新: 根据{{3}},以下工作:
QueryBuilder qb = fullTextEntityManager.getSearchFactory().
buildQueryBuilder().forEntity(Publication.class).get();
....
Query query = qb.keyword().onField("title").ignoreFieldBridge().matching("Lärm").createQuery();
(ignoreFieldBridge做了诀窍)