Heim > Java > javaLernprogramm > Hauptteil

Wie erstellt und verarbeitet man zusammengesetzte Primärschlüssel mit Versionierung in JPA?

DDD
Freigeben: 2024-11-01 08:05:02
Original
428 Leute haben es durchsucht

How to Create and Handle Composite Primary Keys with Versioning in JPA?

Erstellen und Bearbeiten zusammengesetzter Primärschlüssel in JPA

Bei der Verwaltung von Daten, die eine Versionierung erfordern, ist es häufig erforderlich, einen zusammengesetzten Primärschlüssel zu erstellen bestehend aus einer Kennung und einer Versionsnummer. Dies ermöglicht die Erstellung doppelter Einträge mit unterschiedlichen Versionen.

Um dieses Szenario in JPA zu implementieren, gibt es zwei primäre Ansätze: die Verwendung einer eingebetteten Klasse und die Verwendung der @IdClass-Annotation.

Methode 1: Eingebettete Klasse

  • Erstellen Sie eine eingebettete Klasse mit den gewünschten Primärschlüsselattributen (@Column, @JoinColumn usw.).
  • Markieren Sie die Entity-Klasse mit dem @EmbeddedId-Annotation und Referenzierung der Embedded-Klasse.

Beispiel:

<code class="java">@Entity
public class YourEntity {
    @EmbeddedId
    private MyKey myKey;

    @Column(name = "ColumnA")
    private String columnA;

    // getters and setters
}

@Embeddable
public class MyKey implements Serializable {
    @Column(name = "Id", nullable = false)
    private int id;

    @Column(name = "Version", nullable = false)
    private int version;

    // getters and setters
}</code>
Nach dem Login kopieren

Methode 2: @IdClass-Annotation

  • Erstellen Sie eine Klasse mit den gewünschten Primärschlüsselattributen, die den zusammengesetzten Schlüssel darstellen.
  • Annotieren Sie die Entity-Klasse mit der Annotation @IdClass und geben Sie die zusammengesetzte Schlüsselklasse an.
  • Verwenden die @Id-Annotation für beide Primärschlüsselattribute innerhalb der zusammengesetzten Schlüsselklasse.

Beispiel:

<code class="java">@Entity
@IdClass(MyKey.class)
public class YourEntity {
   @Id
   private int id;
   @Id
   private int version;

}

public class MyKey implements Serializable {
   private int id;
   private int version;
}</code>
Nach dem Login kopieren

Beide Ansätze ermöglichen die Erstellung und Umgang mit zusammengesetzten Primärschlüsseln in JPA, was die Verwaltung von Daten mit mehreren Versionen oder Duplikaten ermöglicht.

Das obige ist der detaillierte Inhalt vonWie erstellt und verarbeitet man zusammengesetzte Primärschlüssel mit Versionierung in JPA?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!