Vra

Is dit moontlik om @GeneratedValue omseil vir 'n ID in Hibernate, het ons 'n geval waar die meeste van die tyd wil ons die ID in te stel met behulp van GeneratedValue, maar in sekere gevalle wil die ID hand stel.

Is dit moontlik om te doen?

Was dit nuttig?

Oplossing

Ek weet jy kan dit doen in die JPA spec, so jy moet in staat wees om in Hibernate (met behulp van JPA + notas).

As jy net in die ID veld van die nuwe aanhoudende model wat jy skep vul, dan wanneer jy "Merge" dat model in die EntityManager, dit sal die ID wat jy stel te gebruik.

Dit het wel gevolge, al is. Jy het net opgebruik dat ID, maar die volgorde soos deur die GeneratedValue body nie weet wat. Tensy jy spesifiseer 'n unused ID wat minder is as die huidige reeks waarde, gaan jy 'n probleem kry sodra die volgorde inhaal op die waarde wat jy net gebruik.

So, miskien is ek kan sien waar jy dalk wil die gebruiker in staat wees om 'n ID te spesifiseer, maar dan moet jy die moontlike uitsondering (dubbele ID) wat kan kom in die toekoms te vang.

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top