| Hibernate | EJB 3.0 |
| Defines HQL for expressing queries to the database | Defines EJB QL for expressing queries |
| Session–Cache or collection of loaded objects relating to a single unit of work | Persistence Context-Set of entities that can be managed by a given EntityManager is defined by a persistence unit |
| XDoclet Annotations used to support Attribute Oriented Programming | Java 5.0 Annotations used to support Attribute Oriented Programming |
| Supports Entity Relationships through mapping files and annotations in JavaDoc | Support Entity Relationships through Java 5.0 annotations |
| Provides a Persistence Manager API exposed via the Session, Query, Criteria, and Transaction API | Provides and Entity Manager Interface for managing CRUD operations for an Entity |
| Provides callback support through lifecycle, interceptor, and validatable interfaces | Provides callback support through Entity Listener and Callback methods |
| Entity Relationships are unidirectional. Bidirectional relationships are implemented by two unidirectional relationships | Entity Relationships are bidirectional or unidirectional |
Posted in: