我在 Spring、Jpa、Hibernate-Search、Lucene 应用程序中工作。我想索引一个具有 ENUM 属性的 JPA 实体并使用 Lucene 对其进行搜索。我的 ENUM 中的每个元素都有一个 int 值。
我将@Field 注释放在属性上,但不起作用。在数据库中,该字段被存储为整数。
@Field
@Enumerated
private STATUS status = STATUS.FIRST;
现在我想使用 Lucene 使用这个字段进行搜索
//lucene query to search by that enum field
queryStatus.should(queryBuilder.keyword().onField("status").matching(1).createQuery());
我无法将枚举存储更改为字符串类型,因为它有其他查询正在工作并将此枚举属性用作整数,我不知道如何索引和使用它。