【发布时间】:2018-04-19 19:30:20
【问题描述】:
我正在尝试使用 JPA 在 MySQL 中创建一个顺序生成器字段,对于任何实体,“prod_generator_id”必须以“1”开头。 示例:
这是我的 java 对象:
//this one is working fine, the id is unique...
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "pro_id")
private Long id;
//here is the problem, must start in "1" by entity
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator="seq")
@SequenceGenerator(name="seq", sequenceName="pro_id_tenancy", initialValue=1, allocationSize=1)
@Column(name = "pro_id_tenancy")
private Long idTenancyProjeto;
我正在使用 spring boot,但是当我保存对象时,idTenancyProjeto 将变为空。
我找到的最简单的解决方案:只需计算该公司的产品数量,然后在我的 product.save() 中添加+1,仅此而已,就可以了。谢谢大家。
【问题讨论】:
-
我已经用更多信息更新了这个问题。
-
为了让这个问题看起来很完整,我希望至少有两个类声明(Corporation 和 Product)。此外,“保存对象”的代码示例会很好。