- All Known Implementing Classes:
SequenceBatchIdGenerator
,SequenceIdGenerator
,SequenceStepIdGenerator
,SimpleSequenceIdGenerator
public interface PlatformIdGenerator
Generates unique id's for objects. This occurs prior to the actual insert.
Note that many databases have sequences or auto increment features. These can be used rather than an IdGenerator and are different in that they occur during an insert. IdGenerator is used to generate an id BEFORE the actual insert.
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetName()
Return the name of the IdGenerator.boolean
Return true if this is a DB sequence.nextId
(Transaction transaction) return the next unique identity value.void
preAllocateIds
(int allocateSize) Is called prior to inserting OneToMany's as an indication that a number of beans are likely to need id's shortly.
-
Field Details
-
AUTO_UUID
The name of the default UUID generator.- See Also:
-
-
Method Details
-
getName
String getName()Return the name of the IdGenerator. For sequences this is the sequence name. -
isDbSequence
boolean isDbSequence()Return true if this is a DB sequence. -
nextId
return the next unique identity value.Note the transaction passed in can be null.
-
preAllocateIds
void preAllocateIds(int allocateSize) Is called prior to inserting OneToMany's as an indication that a number of beans are likely to need id's shortly.Can be used as a performance optimisation to prefetch a number of Id's. Especially when the allocateSize is very large.
-