hibernate @GeneratedValue richtig?
Ich meine Entität Eigenschaft
@GeneratedValue
Long id;
und ich in der Lage zu generieren, die für die Entität in der Datenbank. Meine Frage ist, warum alle Personen teilen sich die gleiche fortlaufende Nummer? nicht jede Tabelle sollte anfangen zu zählen von null?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hängt es von der zugrunde liegenden Datenbank.
GenerationType AUTO ist standardmäßig ausgewählt und Hibernate wählt eine der drei Varianten in Abhängigkeit von der Datenbank. Wenn Sie möchten, um die Verwendung eines insbesondere als Attribut der
@GeneratedValue
Diese Datenbank-abhängig. JPA-Implementierungen verwenden Sie unterschiedliche ID-Generatoren, je nachdem, welches Datenbanksystem Sie verwenden. Zum Beispiel bei Oracle, eine einzelne Sequenz erstellt werden soll, und diese Sequenz wird verwendet, um generieren von IDs für alle entity-Typen. Standardmäßig wird es nicht schaffen, eine Sequenz für jedes Unternehmen, da es in der Regel keinen Grund. Die gleiche Logik gilt auch für andere Datenbank-Systeme, die die Sequenzen eher als auto-increment-Spalten.
Bin ich mir nicht 100% sicher, ob die JPA-API können Sie dieses Verhalten ändern, aber ich weiß, dass Hibernate annotations tun. Aber, Sie haven T erzählte uns die Datenbank, die Sie verwenden oder die JPA-Implementierung, die Sie verwenden, so ich kann Ihnen nicht viel mehr Beratung als das.