sql >> Base de Datos >  >> RDS >> Mysql

Enum en Hibernate, que persiste como una enumeración

Si le da a Hibernate una definición de columna, no intentará adivinar una:

@Column(columnDefinition = "enum('MALE','FEMALE')")
@Enumerated(EnumType.STRING)
private Gender gender;

Si no confía en Hibernate para generar su esquema por algún motivo, ni siquiera tiene que proporcionar valores reales para la definición de columna. De esta manera, elimina una instancia en la que necesita mantener los valores sincronizados. Simplemente mantenga su enumeración de Java y su script Liquibase o SQL sincronizados:

@Column(columnDefinition = "enum('DUMMY')")
@Enumerated(EnumType.STRING)
private ManyValuedEnum manyValuedEnum;