Entities are classes that need to be persisted, usually in a relational database. In this chapter we cover the following topics:
EJB 3 entities
Java persistence API
Mapping an entity to a database table
Metadata defaults
Introduction to the entity manager
Packaging and deploying entities
Generating primary keys
Overriding metadata defaults
Entities are classes that need to be persisted; their state is stored outside the application, typically in a relational database. Unlike session beans, entities do not have business logic other than validation. As well as storing such entities, we want to query, update, and delete them.
The EJB 3 specification recognizes that many applications have the above persistence needs without requiring the services (security, transactions) of an application server EJB container. Consequently the persistence aspects of EJB 3 have been packaged as a separate specification—the Java Persistence API (JPA). JPA does not assume we...