GEDOPLAN

Eclipselink und 0 als ID/PK-Wert

Alle

JPA-Entities können ID-Attribute der primitiven Typen int oder long (u. a.) besitzen. Für diese ist der Wert 0 grundsätzlich OK. Eclipselink interpretiert in der Default-Konfiguration solche Werte jedoch als „nicht gesetzt“, was für generierte IDs eine Anforderung eines neuen Wertes bei persist oder merge auslöst.

Soll der Wert 0 als normaler Wert ohne die genannte Sonderbedeutung genutzt werden, muss man Eclipselink dahingehend umkonfigurieren. Dazu muss in der persistence.xml die folgende Property eingesetzt werden:

<property name="eclipselink.id-validation" value="NULL"/>

Damit wird nur noch der Wert null als „nicht gesetzt“ interpretiert. In der Konsequenz können dann generierte ID natürlich keinen primitiven Typ haben.

Anstelle der globalen Einstellung mit Hilfe der genannten Property kann dasselbe auch pro Entity-Klasse mit Hilfe der Annotation @PrimaryKey erreicht werden.

Weitere Details siehe Java Persistence API (JPA) Extensions Reference for EclipseLink.

Autor

Diesen Artikel teilen

LinkedIn
Xing

Gibt es noch Fragen?

Fragen beantworten wir sehr gerne! Schreibe uns einfach per Kontaktformular.

Schulungen mit der selben Kategorie:

Blogkategorie: Alle
Es wurden keine Ergebnisse gefunden.

weitere Artikel

Kontakt

Brauchen Sie eine individuelle IT-Schulung, eine fundierte Beratung oder eine individuelle Softwareentwicklung? Dann sind Sie hier genau richtig!

Tim Neumann

Geschäftsleitung

GEDOPLAN GmbH
Stieghorster Straße 60
33605 Bielefeld

GEDOPLAN GmbH
Kantstraße 164
10623 Berlin

    Kontakt

    Tim Neumann

    Geschäftsleitung

    GEDOPLAN GmbH
    Stieghorster Straße 60
    33605 Bielefeld

    GEDOPLAN GmbH
    Kantstraße 164
    10623 Berlin

    Brauchen Sie eine individuelle IT-Schulung, eine fundierte Beratung oder eine individuelle Softwareentwicklung? Dann sind Sie hier genau richtig!