Java Persistence API is a standard. Hence, there are multiple options to choose from:
Some applications choose not to use an ORM framework at all. For this reason, I decided to run a one-day survey on Twitter to get a glimpse on the JPA providers market share.
We had almost 700 people participating in this survey, and, in the end, Hibernate is leading them by a very large margin (e.g. 72%), meaning that it’s still the de facto choice for many production systems. EclipseLink is following with a market share of 13%, sharing the same percentage of the enterprise applications that chose not to use JPA.
Some time ago, I asked our community to rate the reason why they like Hibernate over other JPA providers:
Code quality and documentation seem to play a significant role.
Like any other open source framework, Hibernate has its issues. However, both the Hibernate development team and the community are working hard on fixing them. For instance, take the 5.1.1 release notes and see how many issues have been resolved. That’s impressive at least!
Regarding documentation, a new User Guide is now available. It took 3 months to rewrite it from scratch, but it was totally worth it.
For me, I think the number of resources available on the Internet that makes Hibernate a very good choice. There are 57000 questions and answers on StackOverflow, as well as on the official forum. There are many blogs about Hibernate too. Just my blog alone contains hundreds of articles related to Hibernate.
When used properly, Hibernate performs very well in production. Otherwise, it will not get such a great market share. For instance, check out these 14 Hibernate Performance Tips. If you want to get ultimate performance from Hibernate, I bet you are going to love my book as well.