Плюсы и минусы: Hibernate против EJB 3 - PullRequest
7 голосов
/ 16 марта 2010

Каковы преимущества и недостатки Hibernate и EJB3 по сравнению друг с другом?

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

Спасибо, Zack

edit: в ответ на комментарии: я не очень разбираюсь в EJB3. Я просто пытаюсь понять, будет ли это чем-то жизнеспособным для моей компании. Если EJB3 не сравним с Hibernate, объясните почему.

1 Ответ

9 голосов
/ 16 марта 2010

JPA предоставляет подмножество функций Hibernate, но EJB3 предоставляет другие службы, которые Hibernate не обращается (например, веб-службы, EJB, служба таймера)

JPA предлагает следующие преимущества по сравнению с Hibernate:

  • Стандартизированный API
  • Независимость от поставщика (может переключаться между Hibernate, TopLink, OpenEJB и т. Д.)

Hibernate предлагает следующие преимущества:

  • Широко используется
  • Стандарт де-факто
  • Прямая поддержка от Spring, Grails и т. Д.
  • Возможно, лучшая поддержка инструментов
  • Больше возможностей, чем у JPA

Что вы можете сделать, это написать свое приложение в EJB с использованием JPA, а затем при необходимости использовать специфичные для Hibernate функции. Или просто используйте обычный Hibernate для обеспечения устойчивости, если вас не волнует стандартизация и привязка к поставщику. Реально вряд ли вы переключитесь между Hibernate и другим провайдером, но это происходит.

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