Afgezien van door de database gegenereerde waarden is het uiteraard niet nodig dat Hibernate de bijgewerkte instantie retourneert omdat het object is doorgegeven aan Session.saveOrUpdate()
is het bijgewerkte exemplaar. Door de database gegenereerde waarden (volgorde, trigger, standaardwaarden, enz.) worden na ingesteld Session.saveOrUpdate
als ze dienovereenkomstig zijn geannoteerd (of gedefinieerd in een XML-toewijzingsbestand).
Voor identificatiewaarden
gebruik de JPA @javax.persistence.GeneratedValue
annotatie in combinatie met de JPA @javax.persistence.Id
annotatie. Voor eenvoudige eigenschappen gebruik de native Hibernate @org.hibernate.annotations.Generated
annotatie (afaik er is geen volgens JPA annotatie).
Hoe gegenereerde ID-waarden worden opgehaald door Hibernate, hangt af van de generatiestrategie en/of het databasedialect. Voor eenvoudige eigenschappen voert Hibernate een extra SELECT
uit by id statement na de INSERT
of UPDATE
.