Интерфейсы репозиториев: JpaRepository и CrudRepository
Spring Data JPA устраняет шаблонный DAO-код, генерируя реализации репозиториев во время выполнения. Вы объявляете интерфейс, расширяете один из базовых интерфейсов репозиториев, и Spring создаёт полностью функциональную реализацию — включая save, findById, findAll, delete, count и пагинацию — без единой строки SQL.