我正在使用Spring数据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);
但是,调用findAll()
不会返回数据,而是针对Redis中存在的每个null
返回id
值:
final Iterable<MyClass> mappingIterable = mappingRepository.findAll();
返回:
[null,null]
答案 0 :(得分:0)
您是否尝试过findAllById(Iterable ids) https://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/repository/CrudRepository.html#findAllById-java.lang.Iterable-
答案 1 :(得分:0)
如果您的项目不需要只使用 List,您可以尝试用 ArrayList 替换普通 List,这将使创建和更新更容易。它可能不起作用,但可以使您的工作更轻松。不管怎样,祝你好运!