首页 > 解决方案 > PagingAndSortingRepository 在运行时将使用什么实现?

问题描述

我对 Spring Data JPA 有点困惑。有人可以解释以下内容吗?

假设我有界面

@Repository
public interface UserRepository extends PagingAndSortingRepository<User, Long> {
}

PagingAndSortingRepository运行时将使用什么实现?

我需要在@Transactional将使用此存储库的类或方法上添加注释吗?

标签: javaspringspring-data-jpaspring-transactions

解决方案


中声明的方法的实现在PagingAndSortingRepository中定义SimpleJpaRepository

如果您希望在事务中执行的所有操作都由单个存储库调用处理,则您不需要任何额外的@Transactional,但通常您确实希望事务覆盖不止一个调用或至少一个加载操作和实体的操作然后。在这些情况下,您通常会使用带有注释的方法@Transactional。但是您也可以使用TranactionTemplate例如在某些类型的测试中可能是利基的 a。


推荐阅读