【发布时间】:2015-04-16 09:51:44
【问题描述】:
我有一个基于 Spring 的应用程序,它使用 JPA 2.1 作为持久层。 我使用@TableGenerator 和@GeneratedValue 注释来处理我的主键ID 生成。
这些是注释:
@TableGenerator(name = "user_gen", table = "id_gen", pkColumnName = "gen_name", valueColumnName = "gen_val", allocationSize = 1)
…
@GeneratedValue(strategy = GenerationType.TABLE, generator = "user_gen")
我使用这个实体在我的用户表中插入记录。 一切都很好。 现在我有一个新问题。外部应用程序需要在我的用户表中插入记录。这会导致我的主键违规。
JPA 中是否有任何选项可以根据我的用户表的最大 id 更新我的 id_gen 表的 gen_val 值?
[在我的研究中找不到这样的解决方案]
也欢迎其他解决问题的想法。
【问题讨论】: