„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie kann ich sicherstellen, dass Hibernate -Konfiten -Enum -Werte beim Zuordnen einer MySQL -Enum -Spalte erhalten?

Wie kann ich sicherstellen, dass Hibernate -Konfiten -Enum -Werte beim Zuordnen einer MySQL -Enum -Spalte erhalten?

Gepostet am 2025-02-06
Durchsuche:976

How to Ensure Hibernate Preserves Enum Values When Mapping to a MySQL Enum Column?

Erhalt von Enum -Werten in Hibernate: Fehlerbehebung falscher Spalten Typ

im Bereich der Datenpersistenz, die Kompatibilität zwischen Datenmodellen, Datenbankschemas, Datenbankschemas und ihre jeweiligen Zuordnungen sind unerlässlich. Bei der Arbeit mit aufgezählten Typen in Java ist es entscheid Code. Sie begegnen jedoch den folgenden Fehler: "Falscher Spaltentyp in MyApp.person für Spaltengeschlecht. Found: Enum, erwartet: Ganzzahl." Dieser Fehler tritt auf, wenn der Hibernate erwartet Die Definition der Spalte unter Verwendung des ColumnDeFinition -Attributs:

@column (columndefinition = "enum ('männlich', 'weiblich')")) @Enumerated (Enumtype.String) Private Geschlecht Geschlecht;

Durch Bereitstellung einer Spaltendefinition anweisen Sie Winterschlaf, den Spaltentyp nicht zu erraten, sondern um die angegebene Definition zu halten. Ihr Schema können Sie die Notwendigkeit von Spaltendefinitionswerten entfernen, indem Sie sie auf willkürliche Werte einstellen:
@Column(columnDefinition = "enum('MALE','FEMALE')")
@Enumerated(EnumType.STRING)
private Gender gender;
@column (columndefinition = "enum ('dummy')") @Enumerated (Enumtype.String) privat vielvaluedenum mysedy valuedenum;

Auf diese Weise können Sie sicherstellen, dass die Enum -Werte in Ihrem Java Enum erhalten bleiben, während Sie Ihre Liquibase- oder SQL -Skripte entsprechend synchronisieren.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3