作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的模型包含一个枚举,它由 JPA 映射到我的 mysql 数据库上的 int
列。
mysql有一个原生的enum
类型,使用起来会更方便。
如何配置 JPA 以使用此类型?
@Entity
public class User extends Model {
public enum Role {
User,
Moderator,
Admin,
}
public Role role;
}
最佳答案
没有对枚举 AFAIK 的内置支持,但也许您可以尝试将此作为解决方法(我从未测试过它):
@Entity
public class User extends Model {
public enum Role {
User,
Moderator,
Admin,
}
@Enumerated(EnumType.STRING)
@Column(columnDefinition = "ENUM('User', 'Moderator', 'Admin')")
public Role role;
}
您可以使用EnumType.STRING它将将该值作为字符串存储在数据库中。
但是使用 native ENUM 需要您使用 @Column 定义 columnDefinition注释需要将您的所有角色都编码在那里,您看到了吗?此处重复。
关于java - 我可以将 Play 配置为使用 mysql 枚举而不是整数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8709751/
我是一名优秀的程序员,十分优秀!