Spring Data 之 Repository 接口


1. 介紹

  • Repository是一個空接口,即是一個標記性接口;
  • 若我們定義的接口繼承了Repository,則該接口會被IOC容器識別為一個 Repository Bean;
  • 也可以通過@RepositoryDefinition注解,來替代繼承Repository接口;
// 源碼:
public interface Repository<T, ID extends Seriallizable>{

}

// 使用繼承的方式
public interface PersonRepository extends Repository<Person, Integer>{
    Person getByLastName(String lastName);
}

// 使用注解替代繼承
@RepositoryDefinition(domainClass=Person.class, idClass=Integer.class)
public interface PersonRepository{
    Person getByLastName(String lastName);
}

2. Repository接口的子接口

  • CrudRepository:繼承Repository,實現了一組CRUD相關的方法;
  • PagingAndSortingRepository:繼承CrudRepository,實現了一組分頁排序相關的方法;
  • JpaRepository:繼承PagingAndSotringRepository,實現一組JPA規范相關的方法;
  • 自定義的XxxRepository:可以繼承JpaRepository;
  • JpaSpecificationExecutor:不屬於Repository體系,實現一組 JPA Criteria 查詢相關的方法;

參考資料:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM