CrudRepository 的 findAll() 方法返回空值

2022-09-04 23:40:11

我正在使用Spring data Redis,并拥有以下存储库:

public interface MyClassRepository extends CrudRepository<MyClass, String> {
}

当我调用方法时,返回正确的数据:findAll(Iterable< String> ids)

final List<String> ids = Lists.newArrayList("id1", "id2");
final Iterable<MyClass> mappingIterable = mappingRepository.findAll(ids);

但是,调用不会返回数据,而是针对 Redis 中的每个当前项返回值:findAll()nullid

final Iterable<MyClass> mappingIterable = mappingRepository.findAll();

返回:

[空,空]


答案 1

您可以尝试将普通列表替换为 ArrayList,如果您的项目不需要仅使用 List,这将使创建和更新变得更加容易。它可能不起作用,但可以使您的工作更轻松。无论如何,祝你好运!


答案 2

您是否尝试过将空列表作为参数传递?你可以试试:

repo.findAll(new ArrayList<>());

我怀疑你需要覆盖没有参数的findAll,但我不确定这一点。


推荐