Является ли Hibernate устаревшим? - PullRequest
12 голосов
/ 22 июля 2010

Этим утром я был на S-Bahn (немецком метро) и встретил однокурсника, который работает в IBM. Он занимается оптимизацией Java EE. Я рассказал ему о своем маленьком проекте. И он рекомендовал не использовать «oldschool» Hibernate. Вот почему мой вопрос:

Hibernate устарел? (В сочетании с Java EE / веб-разработкой)

.. или он просто prate ..

Ответы [ 7 ]

25 голосов
/ 22 июля 2010

Нет, Hibernate не устарел.

Однако теперь есть JPA (Java Persistence API), который является стандартным API для выполнения задач, которые делает Hibernate.

Обратите внимание, что JPA - это просто спецификация интерфейса.Вам понадобится что-то, что реализует JPA, а Hibernate является одной из реализаций JPA.Помимо Hibernate, есть несколько других, таких как EclipseLink (официальная справочная реализация для JPA) и Apache OpenJPA.

4 голосов
/ 22 июля 2010

Hibernate, помимо того, что является реализацией JPA, действительно предоставляет множество дополнительных расширенных функций, которых нет в JPA (дополнительный синтаксис в запросе, поддержка QBC и т. Д.).Некоторые из них действительно полезны и трудно найти обходной путь в мире JPA (пока).Без предоставления таких функций трудно сказать, что JPA может «заменить» Hibernate (следовательно, говоря, что Hibernate устарел)

3 голосов
/ 22 июля 2010

Hibernate - поставщик JPA, предлагаемый JBoss, который является сервером Java EE, поэтому я сомневаюсь, что Hibernate как реализация устарела.

Возможно, он имел в виду, что использование Hibernate на сервере Java EE, минуя постоянство контейнера-поставщика, устарело, и вы должны полагаться на наш контейнер для таких служб.

2 голосов
/ 22 июля 2010

Одна из возможных причин, по которой он мог предложить вам выступить против Hibernate, заключается в том, что для небольшого проекта затраты на понимание Hibernate могут быть весьма значительными.

Hibernate обширный по меньшей мере. Хотя это может быть использовано простым способом, но чтобы это выяснить, вам нужно понять гораздо больше.

, но будьте уверены, что Hibernate НЕ устарел или будет в будущем. просто если ваши потребности в ORM скромны, вы можете попробовать другие решения, такие как iBATIS

2 голосов
/ 22 июля 2010

Нет, Hibernate не может быть устаревшим. Существует JPA, которая является спецификацией постоянства, и Hibernate реализует ее. Кроме того, Hibernate имеет свои собственные расширенные функции, которых нет у JPA, и поэтому Hibernate является основным источником новых функций, добавляемых в стандарт JPA.

1 голос
/ 10 октября 2010

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

1 голос
/ 22 июля 2010

JPA - это только один из способов сделать это.Еще есть Spring и все остальные фреймворки, где Hibernate хорошо жив.

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