hibernate 存入数据时会覆盖掉原来外键中的数据
User 与Group 是manytoone 的关系, User 中有个private Group group 参考Group 的id
@manyToOne
public Group getGroup()
{
return this.group;
}
-----存入User
public void testUserSave1()
{
Group g = new Group();
g.setName("g1");
User u1 = new User();
u1.setName("u1");
u1.setGroup(g);
//调用Service 这里结合了spring 最终利用的是hibernateTemplate
hibernateTemplate.save(u1);
}
这样存入u1后 在Group 这张表里生成了一条记录(id ,name):(1,g1)
再存入u2
public void testUserSave2()
{
Group g = new Group();
g.setId(1);
User u2 = new User();
u2.setName("u2");
u2.setGroup(g);
hibernateTemplate.save(u2)
}
这样存入u2后 Group表中id为1 的记录(id,name)变为:(1,null);
name 为null了;
本来是想要存入u2 同样让其属于g1 这组,但是这样存确把原来的id=1这条记录给覆盖了
求帮忙,怎样做不覆盖掉原来的记录
------解决方案--------------------
映射文件的id有没有设置成自增啊