我有一个Product表,它有字段Name、SKU、Description和Product category(与产品类别表的多对一关系)。我使用 Hibernate Search 对Product进行了索引,并编写了以下代码来执行搜索:
FullTextEntityManager fullTextEntityManager = org.hibernate.search.jpa.Search
.getFullTextEntityManager(getEntityManager());
QueryBuilder qb = fullTextEntityManager.getSearchFactory()
.buildQueryBuilder().forEntity(Product.class).get();
org.apache.lucene.search.Query query = qb.keyword().fuzzy()
.onFields("name", "sku", "uniqueid", "description")
.matching(value).createQuery();
javax.persistence.Query persistenceQuery = fullTextEntityManager
.createFullTextQuery(query, Product.class);
现在我想在产品类别上添加一个 where 条件。例如,我只想搜索 productCategory.Id=101 的产品。
谁能建议我如何做到这一点?
感谢和问候维杰