寻找这个问题的答案,我偶然发现了这个链接
似乎Hibernate / JPA无法自动为你的非id属性创建一个值。该@GeneratedValue
注释只有配合使用@Id,以创建自动编号。
该@GeneratedValue
注释只是告诉Hibernate数据库已生成该值本身。
该论坛中建议的解决方案(或解决方法)是使用生成的ID创建一个单独的实体,如下所示:
@Entity
public class GeneralSequenceNumber {
@Id
@GeneratedValue(...)
private Long number;
}
@Entity
public class MyEntity {
@Id ..
private Long id;
@OneToOne(...)
private GeneralSequnceNumber myVal;
}