jpa级联主键自增问题
两个实体,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,而不是每张表独立。
请问这个有办法解决吗?
难道说同一个事务中的所有新建的实体主键都是这样的?还是说跟级联有什么关系?我想要的是每个实体都是各自按照顺序增长的。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
保存记录时 并没有返回ID..
我用的是mysql,每个表设置独立的seqence具体怎么操作啊?谢谢你的回答
oracle才会更具需要设置seqence,mysql没有这个!
和数据库有关,你用的oracle吧!oracle默认有所表使用同一个seqence,把每一个表设置独立的seqence就可以了!