我想要一个JPA / Hibernate(最好是JPA)注释,它可以生成一个列的值,它不是主键,也不是从1开始.
从我所看到的,JPA不能用@GeneratedValue和@SequenceGenerator以及@TableGenerator来做到这一点.或者其他任何东西.
我看到solution有一张额外的桌子,我发现它不优雅.
我可以使用Hibernate注释,因为我已经有了hibernate注释.
我想使用@Generated,但我无法使它工作,人们claim可能.
@Generated(GenerationTime.INSERT) private long invoiceNumber;//invoice number
更新:一个额外的要求,如果事务被回滚,我们就不能在编号上留下空白.
任何人?
解决方法
@GeneratedValue仅适用于标识符,因此您无法使用它.如果使用MysqL,则由于不支持数据库序列,因此非常有限.
InnoDB doesn’t support multiple AUTO_INCREMENT columns如果您的表PK是AUTO_INCREMENTED,那么您有两个选择:
>选择一个单独的表,其行为类似于序列生成器,您已经说过的解决方案并不高兴.
>使用INSERT TRIGGER增加该列.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。