Det mest bärbara sättet är att använda TableGenerator . Den är portabel eftersom inga databasleverantörsspecifika konstruktioner används. Senast genererade värde lagras i databastabellen och värdet hämtas och inkrementeras via SQL-frågor.
Användning täcks också av Hibernate dokumentation.