Spring Data Commons provides the basic abstractions behind Spring Data modules. We will use Spring Data JPA as an example to illustrate these abstractions.
Some of the important interfaces in Spring Data Commons are listed as follows:
Repository<T, ID extends Serializable>
CrudRepository<T, ID extends Serializable> extends Repository<T, ID>
PagingAndSortingRepository<T, ID extends Serializable> extends
CrudRepository<T, ID>