我想要一个唯一的成员编号列。使用Hibernate / JPA执行此操作的最佳方法是什么?
生成可以用作会员编号的10位数的唯一整数组合的最佳方法是什么?
EDIT
@Generated(GenerationTime.INSERT)
@Column(insertable = false)
private int membernumber;
答案 0 :(得分:0)
我对该主题进行了一些研究,发现JPA规范允许@GeneratedValue用于非ID列,但hibernate不允许。
JPA or Hibernate to generate a (non primary key) column value, not starting from 1
您可以在数据库中使用插入触发器,也可以在保存实体之前在服务中手动生成插入触发器。该链接对此进行了很好的讨论。
希望它有所帮助。