- Spring Data JPA - это абстракция Spring к JPA (Java Persistence API) с более простыми в использовании методами наряду со значениями по умолчанию, определенными в спецификации JPA
- Hibernate в другом случае - реализация JPA (поставщик JPA).
Spring Data не может существовать сама по себе и нуждается в одном или другом провайдере JPA для реализации методов.По этой причине Spring Data JPA может работать с любым провайдером JPA, но по умолчанию он автоматически настраивается с помощью Hibernate.
Таким образом, все функции ORM в Spring-data под капотом для управления объектами, отправки запросов и т. Д. По-прежнемуиспользуя реализации Hibernate.Хранилища просто позволяют вам писать запросы на лету, которые снова преобразуются в базовые запросы на основе провайдера источника данных и стандартного SQL-диалекта спящего режима.
Вы также можете использовать Spring-Data с другими провайдерами JPA, такими как (Toplink, OpenJPA), Eclipselink) с настройкой в проекте.