Heim > Datenbank > MySQL-Tutorial > Wie bleiben Enum-Typen im Ruhezustand bestehen?

Wie bleiben Enum-Typen im Ruhezustand bestehen?

Patricia Arquette
Freigeben: 2024-10-30 19:59:30
Original
818 Leute haben es durchsucht

How to Persist Enum Types in Hibernate?

Persistente Enum-Typen in Hibernate

Bei der Arbeit mit Hibernate kann die Zuordnung von Enum-Typen zu Datenbankspalten manchmal eine Herausforderung darstellen. Standardmäßig erwartet Hibernate, dass Enum-Werte als Ganzzahlen gespeichert werden. Aus Gründen der Klarheit und Konsistenz möchten Sie jedoch möglicherweise lieber den Enum-Typ in der Datenbank beibehalten.

Um dies zu erreichen, können Sie die Annotation @Column mit dem Attribut columnsDefinition nutzen:

<code class="java">@Column(columnDefinition = "enum('MALE','FEMALE')")
@Enumerated(EnumType.STRING)
private Gender gender;</code>
Nach dem Login kopieren

By Durch Angabe der ColumnDefinition definieren Sie explizit den Datentyp der Spalte in der Datenbank und stellen so sicher, dass der Enum-Typ erhalten bleibt.

Wenn Sie für die Schemagenerierung nicht auf Hibernate angewiesen sind, können Sie den Prozess weiter vereinfachen Verwenden eines beliebigen Werts für die SpalteDefinition:

<code class="java">@Column(columnDefinition = "enum('DUMMY')")
@Enumerated(EnumType.STRING)
private ManyValuedEnum manyValuedEnum;</code>
Nach dem Login kopieren

Dieser Ansatz ermöglicht es Ihnen, Ihre Java-Enumeration und Ihr Datenbankschema synchron zu halten, ohne sich auf hartcodierte Werte verlassen zu müssen.

Das obige ist der detaillierte Inhalt vonWie bleiben Enum-Typen im Ruhezustand bestehen?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage