La specifica JPA
(Java Persistence API) ha 2 modi diversi per specificare le chiavi composite di entità: @IdClass
e @EmbeddedId
.
Sto usando entrambe le annotazioni sulle mie entità mappate, ma risulta essere un gran casino per le persone che non hanno molta familiarità JPA
.
Voglio adottare un solo modo per specificare le chiavi composite. Qual è davvero il migliore? Perché?
@IdClass
anche se preferisco@EmbeddedId
nella maggior parte delle situazioni (ho imparato questo da una sessione di Antonio Goncalves. Ciò che ha suggerito è che potremmo usare il@IdClass
caso il composito la classe chiave non è accessibile o proviene da un altro modulo o codice legacy in cui non è possibile aggiungere un'annotazione. In questi scenari@IdClass
ci darà un modo il nostro