Wednesday, February 3, 2010

Persistence Frameworks, ORMs

The big three, I consider mainstream (from Java perspective):
  • Hibernate
  • JPA
  • JDO
 I have sorted them in the market share order, but there are some interesting facts that make all three important:
  • Hibernate is definitely the strongest, most popular ORM framework for Java and .Net, but it's not a standard per se.
  • JPA is a standard and it's fully supported by HIbernate, so choosing it gives you some advantages over Hibernate. Its design was based on Hibernate and JDO.
  • You can use Hibernate and restrict yourself to the JPA-only, which gives you a portability to another JPA-type framework, if you so choose in future.
  • JDO, although the oldest one, is the preferred persistence mechanism for Google Application Engine, the Java application hosting service of Google (although, you can also use JPA with it).
Which framework to choose? Your choice.  Need more help choosing? Try this article.

No comments: