Есть ли какое-либо преимущество в использовании библиотеки, отличной от Hibernate, для JPA?

StackOverflow https://stackoverflow.com/questions/2481057

Вопрос

Я использую JPA уже некоторое время и участвовал в проектах, где мы использовали как Hibernate Annotations, так и Toplink Essentials.

AFAIK, руководитель проекта выбрал Toplink, потому что Netbeans интегрировал его и казалось, что это проще всего сделать.

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

Это было полезно?

Решение

Нашли ли вы какое-либо преимущество, производительность или что-то еще, если вы не используете стандарт де-факто для JPA, Hibernate?

Я предпочитаю Hibernate, потому что:

  • Я думаю, что (размер) сообщества имеет значение.
  • Я доволен производительностью Hibernate, документацией, инструментами, поддержкой и расширениями.
  • Я до сих пор сам не проводил никаких тестов и не доверяю тем немногим тестам, которые вы можете найти в Интернете (которые либо не репрезентативны, либо предвзяты), поэтому я не могу сравнивать с точки зрения производительности.

Но TopLink Essentials — это серьёзная реализация (она используется в коммерческом распространении GlassFish, и TopLink оказался отличным продуктом).Просто, ИМХО, вам может быть не так легко найти помощь, как с Hibernate.

Другие советы

Почему бы на самом деле не провести сравнение скорости типичных операций, которые требуются вашему приложению?Да, есть различия.Или, может быть, вам нужны определенные расширения, а в Hibernate в таких случаях их нет.Стандарта «де-факто» не существует. для JPA, вопреки вашему мнению.Многие люди используют Hibernate, используя его API, а не JPA.Вы знаете, что существует множество «подводных камней» при использовании системы с прокси-серверами, и, следовательно, вы должны иметь это в виду при разработке своей модели;другие реализации не обязательно имеют их.Существует также множество других реализаций JPA.

PS, DataNucleus AccessPlatform — одна из таких реализаций.Я предпочитаю предоставить вам возможность провести сравнение, поскольку это ваш проект, к которому оно должно применяться.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top