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.
EclipseLink/UserGuide/JPA/Basic JPA Development/Entities/Ids/UuidGenerator
< EclipseLink | UserGuide | JPA | Basic JPA Development
EclipseLink JPA
EclipseLink | |
Website | |
Download | |
Community | |
Mailing List • Forums • IRC • mattermost | |
Issues | |
Open • Help Wanted • Bug Day | |
Contribute | |
Browse Source |
Key API
@UuidGenerator
You can use the @UuidGenerator
to generate an object's Id based on a Universally Unique IDentifier (UUID). A UUID is a globally unique id. A UUID does not require database access, so is efficient to generate, but is a large value, so requires more storage than a numeric id. A UUID can be stored as a String (32 bytes) or a byte[] (16 bytes). UUIDs are useful in distributed architectures as they do not require a single generation point.
Attribute | Description | Default | Required? |
---|---|---|---|
name | The name of the generator must match the name of a GeneratedValue. | Yes |
Example: @UuidGenerator
@Entity public class Employee implements Serializable { ... @Id @UuidGenerator(name="UUID") @GeneratorValue(generator="UUID") @Column(name="EMP_ID") public String getId() { return id; } ... }
Example: Using <sequence-generator>
<entity class="Employee"> <attributes> <id name="id"> <column name="EMP_ID"/> <generated-value generator="UUID"/> <uuid-generator name="UUID"/> </id> ... </attributes> </entity>