Skip to Main Content
Enterprise JavaBeans 3.1, 6th Edition
book

Enterprise JavaBeans 3.1, 6th Edition

by Andrew Lee Rubinger, Bill Burke
September 2010
Intermediate to advanced content levelIntermediate to advanced
766 pages
18h 35m
English
O'Reilly Media, Inc.
Content preview from Enterprise JavaBeans 3.1, 6th Edition

Primary Keys

A primary key is the identity of a given entity bean. Every entity bean must have a primary key, and it must be unique. Primary keys can map to one or more properties and must map to one of the following types: any Java primitive type (including wrappers), java.lang.String, or a primary-key class composed of primitives and/or strings. Let’s first focus on simple one-property primary keys.

@Id

The @javax.persistence.Id annotation identifies one or more properties that make up the primary key for your table:

package javax.persistence;

@Target({METHOD, FIELD}) @Retention(RUNTIME)
public @interface Id
{
}

You can generate the primary key for your entity beans manually or have the persistence provider do it for you. When you want provider-generated keys, you have to use the @javax.persistence.GeneratedValue annotation:

package javax.persistence;

@Target({METHOD, FIELD}) @Retention(RUNTIME)
public @interface GeneratedValue
{
   GenerationType strategy() default AUTO;
   String generator() default "";
}

public enum GenerationType
{
   TABLE, SEQUENCE, IDENTITY, AUTO
}

Persistence providers are required to provide key generation for primitive primary keys. You can define the type of primary generator you would like to have using the strategy() attribute. The GeneratorType.AUTO strategy is the most commonly used configuration, and it is the default:

/**
 * Primary key
 */
@Id
@GeneratedValue
private Long id;

Table Generators

The TABLE strategy designates a user-defined relational table from which ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Reinventing the Organization for GenAI and LLMs

Reinventing the Organization for GenAI and LLMs

Ethan Mollick
JavaServer Faces

JavaServer Faces

Hans Bergsten
EJB 3 Developer Guide

EJB 3 Developer Guide

Michael Sikora

Publisher Resources

ISBN: 9781449399139Errata Page