Я в замешательстве от Hibernate? - PullRequest
4 голосов
/ 21 сентября 2010

Я выучил JPA для ORM.Теперь меня просят использовать Hibernate в качестве моего провайдера.Если я начну с Hibernate, то у него будет другая концепция.Скажите, пожалуйста, как я могу связать JPA и спящий вместе?JPA превращает мой Java-код в простой код для сохранения объектов.Теперь, что спящий режим помогает JPA и что он обеспечивает.Кто-нибудь, пожалуйста, объясните в простом.

Ответы [ 3 ]

3 голосов
/ 21 сентября 2010

Как ответил Паскаль здесь

JPA - это просто API.Чтобы использовать JPA, вам нужна реализация этого API, и такие реализации называются поставщиками постоянства (EcliseLink, Hibernate, OpenJPA)

2 голосов
/ 21 сентября 2010

JPA - это спецификация API для сохраняющихся объектов. Он определяет язык запросов, подобный SQL, и аннотации для определения сущностей и отношений.

Hibernate - это реализация JPA, которая имеет различные расширения, а также устаревший API и язык запросов. Пока вы не используете какое-либо из расширений Hibernate и придерживаетесь API JPA, вы можете более или менее использовать его взаимозаменяемо с другими реализациями JPA, такими как OpenJPA, TopLink и т.д.

2 голосов
/ 21 сентября 2010

Hibernate не является другой концепцией; это только одна из многих реализаций JPA. Другой был бы EclipseLink. Если вы и реализации придерживаетесь спецификации, то переключение реализации - это просто вопрос изменения пары строк в вашем persistence.xml (например, тег <provider> и свойства, специфичные для реализации). По крайней мере, в теории ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...