Mit einem Hibernate-Mapping einer Legacy-Datenbank möchte ich EnumTypes verwenden, um bestimmte Spalten, die String-Konstanten mit Leerzeichen enthalten, einer Enum-Klasse zuzuordnen.Kann Karte EnumTypes mit Leerzeichen im Winterschlaf halten?
Die Abbildung:
@Entity
@Table(name = "OPERATOR")
public class Operator {
@Id
@Column(name = "ID")
private Long id;
...
@Enumerated(EnumType.STRING)
@Column(name = "STATUS")
private Status status;
...
}
public enum Status {
OPERATOR_CREATED("Operator created"),
ACTIVE("Active"),
END_DATED("End dated");
private String name;
Status(String status) {
name = status;
}
}
Wie Sie sehen kann uns nicht wir die Datenbankwerte gerade wie der Enum-Name, da gibt es weißen Räume in ihnen.
Ich frage mich, ob es möglich ist, enums dafür zu verwenden?
Sie können auch eine ReversibleEnum (http://www.khanspot.com/2006/12/04/java-wish-a-reversible-enum/) buchen, mit dem vonString() -Methode elegant zu implementieren auf Status. – mtpettyp