我有一个简单的问题:为什么Resource Type Annotations返回实体列表但JpaRepository返回实体的可执行文件?
是故意这样做的吗?我想这是因为CrudRepository是更通用的接口,可能有一些特定的存储库返回Iterable。
在不使用特定JpaRepository的情况下使用CrudRepository会更加困难。
由于
答案 0 :(得分:25)
无论使用何种实际数据存储,类CrudRepository
都是Spring Data Commons project和is the recommended interface to extend的一部分。
CrudRepository
方法返回Iterable
而非List
(或Set
)的原因是因为some data stores allow streaming of results并且使用Collection
类型会导致这些商店的功能丧失。
答案 1 :(得分:4)
JpaRepository extends PagingAndSortingRepository
和PagingAndSortingRepository extends CrudRepository
。
这允许JpaRepository
具有更具体的Itrable
返回类型List