jpa级联主键自增问题

sanlion 发布于 2013/06/22 12:57
阅读 762
收藏 0

两个实体,USER,GORUP,每个实体的主键都是@GeneratedValue(strategy = GenerationType.AUTO),当然级联关系也设置好了,测试的时候是设置的cascade = {CascadeType.ALL}

GROUP与USER 是oneToMany的关系,我现在要保存一个GROUP,两个实体都是新建的

Group g = new Group();

g.setUser(new User());

em.persist(g);

查看数据库的时候,两个实体保存成功,级联关系也是正确的,但是他们的主键不是我想要的结果,GROUP的ID是1,USER的ID是2,多次创建是时候,发现他们的主键自增是相关联的,就是123456,而不是每张表独立。

请问这个有办法解决吗?

难道说同一个事务中的所有新建的实体主键都是这样的?还是说跟级联有什么关系?我想要的是每个实体都是各自按照顺序增长的。

加载中
0
云竹无心
和数据库有关,你用的oracle吧!oracle默认有所表使用同一个seqence,把每一个表设置独立的seqence就可以了!
云竹无心
oracle才会更具需要设置seqence,mysql没有这个!
sanlion
sanlion
我用的是mysql,每个表设置独立的seqence具体怎么操作啊?谢谢你的回答
0
唐代de豆腐
唐代de豆腐
保存记录时 并没有返回ID..
返回顶部
顶部