如何通过多个字符串值查找全部?

How to findAll by multplie string values?

我有一个实体员工,它的 status 字段为 @Enumerated,在 PostgreSQL 中保存为字符串。

.

status 可以包含 3 个值:ACTIVE, INACTIVE, TRIAL

我想要一个没有命名查询的 JPA 方法,或者 @Query 将获取所有员工的注释 where status = 'ACTIVE' or 'TRIAL'. .

`findAllByStatusIn(List statusList)' 仅将最后添加的状态提供给列表。

即,如果我添加

statusList.add(Status.ACTIVE)
statusList.add(Status.TRIAL)

。 那么我只有 TRIAL 名员工 . 但是如果我添加

statusList.add(Status.TRIAL);
statusList.add(Status.ACTIVE);

如何使用 JPA 方法获取两种状态的值?

感谢任何帮助。

JPA 和 Spring 数据的新功能。

如果这个问题可能重复,请指导我找到正确答案。

提前致谢。

在尝试了以上宝贵意见的几个版本后,我找到了基于状态列表获取的正确方法。

Page<Employee> findAllByStatusIn(List<Status> statusList, Pageable pageable);

按预期工作。 也提供可分页的信息。我还尝试从方法中删除 All 关键字。

这也是一样的:

Page<Employee> findByStatusIn(List<Status> statusList, Pageable pageable);

由于是一次获取多条记录,为了便于理解,我保留了All关键字。

不过我觉得没有必要。