## Uses of Interface
org.springframework.data.repository.Repository

Packages that use Repository
org.springframework.data.repository: Central interfaces for repository abstraction.
org.springframework.data.repository.core.support: Base classes to implement repositories for various data stores.
org.springframework.data.repository.history: API for repositories using historiography.
org.springframework.data.repository.reactive: Support for reactive repositories.

### Uses of Repository in org.springframework.data.repository

Subinterfaces of Repository in org.springframework.data.repository
`interface` `CrudRepository<T,ID>` Interface for generic CRUD operations on a repository for a specific type.
`interface` `PagingAndSortingRepository<T,ID>` Extension of `CrudRepository` to provide additional methods to retrieve entities using the pagination and sorting abstraction.

### Uses of Repository in org.springframework.data.repository.core.support

Classes in org.springframework.data.repository.core.support with type parameters of type Repository
`class` `RepositoryFactoryBeanSupport<T extends Repository<S,ID>,S,ID>` Adapter for Springs `FactoryBean` interface to allow easy setup of repository factories via Spring configuration.
`class` `TransactionalRepositoryFactoryBeanSupport<T extends Repository<S,ID>,S,ID>` Extension of `RepositoryFactoryBeanSupport` to add transactional capabilities to the repository proxy.

### Uses of Repository in org.springframework.data.repository.history

Subinterfaces of Repository in org.springframework.data.repository.history
`interface` `RevisionRepository<T,ID,N extends Number & Comparable<N>>` A repository which can access entities held in a variety of `Revisions`.

### Uses of Repository in org.springframework.data.repository.reactive

Subinterfaces of Repository in org.springframework.data.repository.reactive
`interface` `ReactiveCrudRepository<T,ID>` Interface for generic CRUD operations on a repository for a specific type.
`interface` `ReactiveSortingRepository<T,ID>` Extension of `ReactiveCrudRepository` to provide additional methods to retrieve entities using the sorting abstraction.
`interface` `RxJava2CrudRepository<T,ID>` Interface for generic CRUD operations on a repository for a specific type.
`interface` `RxJava2SortingRepository<T,ID>` Extension of `RxJava2CrudRepository` to provide additional methods to retrieve entities using the sorting abstraction.
`interface` `RxJava3CrudRepository<T,ID>` Interface for generic CRUD operations on a repository for a specific type.
`interface` `RxJava3SortingRepository<T,ID>` Extension of `RxJava3CrudRepository` to provide additional methods to retrieve entities using the sorting abstraction.