|
I've found that many people are confused about the relationship between these specifications. I suspect your poll results may be affected, but in any case, here is a quick recap.
JPA is a, non-standard, acronym for Java Persistence API. The specification was developed by the same Expert Group as EJB 3.0 but it is a separate spec. In particular, EJB 3.0 can only be implemented in the context of Java EE 5, while the Java Persistence spec can be implemented in many contexts, including plain Java SE. Unfortunately, when some people say "EJB 3.0", they really mean "Java Persistence".
There are several implementations of JavaPersistence, including TopLink Essentials (in GlassFish), Hibernate, Kodo and OpenJPA. Some of these implementations may also have other APIs, be for historical reasons or as extensions.
Hope this helps, - eduard/o |