Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "EclipseLink/UserGuide/JPA/Basic JPA Development/Entities/Creating and Configuring Entities"
Line 7: | Line 7: | ||
|apis= | |apis= | ||
*[http://www.eclipse.org/eclipselink/api/latest/javax/persistence/Entity.html @Entity] | *[http://www.eclipse.org/eclipselink/api/latest/javax/persistence/Entity.html @Entity] | ||
+ | * [http://www.eclipse.org/eclipselink/api/latest/javax/persistence/Id.html @Id] | ||
* [http://www.eclipse.org/eclipselink/api/latest/javax/persistence/IdClass.html @IdClass] | * [http://www.eclipse.org/eclipselink/api/latest/javax/persistence/IdClass.html @IdClass] | ||
* [http://www.eclipse.org/eclipselink/api/latest/javax/persistence/package-summary.html Package javax.persistence] | * [http://www.eclipse.org/eclipselink/api/latest/javax/persistence/package-summary.html Package javax.persistence] |
Revision as of 15:47, 13 June 2011
EclipseLink JPA
EclipseLink | |
Website | |
Download | |
Community | |
Mailing List • Forums • IRC • mattermost | |
Issues | |
Open • Help Wanted • Bug Day | |
Contribute | |
Browse Source |
Key API
Native API
Configuring Entities
An entity is a lightweight persistence domain object. Typically, an entity represents a table in a relational database, and each entity instance corresponds to a row in the table. The primary programming artifact of an entity is the entity class, although entities can use helper classes.
The persistent state of an entity is represented either through persistent fields or persistent properties. These fields or properties use object/relational mapping annotations to map the entities and entity relationships to the relational data in the underlying data store.
Identifying an Entity
Use the @Entity annotation to specify that a class is an entity, as shown in the following example:
@Entity public class Employee implements Serializable { ... }
Note: The entity class must also be listed in your persistence.xml file, unless you set the tag <exclude-unlisted-classes>
to false
. An entity can also be defined using an orm.xml file and the <entity>
tag.
For more information, see Chapter 2 "Entities" in the JPA Specification.
Configuring an Entity's Persistent Identity
Every entity must have a persistent identity, which is an equivalent of a primary key in a database table that stores the entity state.
By default, the EclipseLink persistence provider assumes that each entity has at least one field or property that serves as a primary key.
You can generate and/or configure the identity of your entities by using the following annotations:
You can also use these annotations to fine-tune how your database maintains the identity of your entities.
Note: If your class does not have a logical Id then you need to add a generated one. Embedded objects do not require an Id.