【发布时间】:2013-03-21 19:36:24
【问题描述】:
我有一个名为 GROUPS 的表,其中有一列 GROUP_ID,其值为
GRP001、GRP002、GRP003
等等。现在每次我插入一个新行时,我都必须插入一个 (current) GROUP_ID= (highest)GROUP_ID+ 1 ,例如如果最高 GROUP_ID= GRP003 我必须在插入新行时生成一个新的 GROUP_ID GRP004。
如何使用 java 做到这一点?
我目前在我的程序中使用 Hibernate 和 Struts 2
有没有办法使用休眠来解决这个问题?或者我是否必须编写额外的代码来锁定表,检查数据库的最大 ID(然后增加它),最后释放锁?
【问题讨论】:
-
这是在什么数据库上运行的?看这个问题-stackoverflow.com/questions/6346450/…你大概可以写一个类来生成密钥。不确定。为什么组 id 必须在其前面有“GRP”而不是直接序列 #?
-
这个应用程序应该是独立于数据库的,这就是我使用 Hibernate 的原因,并且预定义组 ID 应该在其前面有“GRP”。
标签: java hibernate jakarta-ee sequence auto-increment