@javax.persistence.SequenceGenerator

hibernate buch cover klein

Extract of the annotation reference in the Hibernate Developer Guide by example

Extensive, easy-to-follow introduction to Hibernate 3 including complete working examples. Integration of Hibernate with other technologies like Spring, EJB3, Struts and JavaServer Faces (MyFaces) is explained.

It is available as PDF in English language.
A German paper book was published by the Galileo Verlag.

Get more information.

@javax.persistence.SequenceGenerator(

definiert einen Id Generator, der von der Annotation @GeneratedValue referenziert werden kann; Der Generator verwendet eine Sequenz.

name=�generatorName�,

Name des Generators, der in der Annotation @GeneratedValue verwendet werden kann

sequenceName=�dbSequenceName�,

optional, Name der Sequenz in der Datenbank, Vorgabe: hibernate_sequence

initialValue=1,

legt den Startwert der Sequenz fest, Vorgabewert: 1

allocationSize=50

Vorgabewert: 50, Der Sequenzgenerator ruft nicht für jeden neuen Datensatz eine Datenbanksequenz auf, sondern erh�ht die Sequenz um die allocationSize und verteilt die Nummern. Erst wenn alle Nummern verteilt sind, wird die Sequenz wieder aufgerufen. Wenn man 50 Eintr�ge in die Datenbank schreibt spart man sich bei einer allocationSize von 50 daher 49 Abfragen der Sequenz. Das verbessert die Performance. Der Nachteil ist, dass die vergebenen Ids bei einem Neustart der Anwendung L�cken haben.

Generatoren sollten laut EJB 3 Spec global sein, aber Hibernate h�lt sich mindestens bis zur Version 3.2 nicht an diese Festlegung.

)


@Entity

@SequenceGenerator(name = "puma_seq", sequenceName = "puma_id_seq")

public class Puma implements Serializable {