根据我的要求,我想将记录保存在@onetomany mapping创建的默认表中,问题是我想多次插入同一条记录,但hibernate不允许我这样做,并给出以下异常:
org.hibernate.ununiqueObjectException:具有相同标识符值的不同对象已与会话关联
型号
@OneToMany(fetch = FetchType.EAGER, cascade =
CascadeType.ALL,orphanRemoval=true)
private List<MasterCode> msCode;
public List<MasterCode> getMsCode() {
return msCode;
}
public void setMsCode(List<MasterCode> msCode) {
this.msCode = msCode;
}
刀
public void saveOrUpdate(User user) {
Session session=sessionFactory.getCurrentSession();
Transaction tx=session.beginTransaction();
try {
session.saveOrUpdate(user);
} catch (HibernateException e) {
tx.rollback();
e.printStackTrace();
}
tx.commit();
}
控制器
User user =new User();
user.setName("xyz");
user.setMsCode(selectedMsList);
``` `selectedMsList` 包含选定对象的记录 `MasterCode` 例如:[id:2,代码:“”],[id:3,代码:“yyy”],[id:3,代码:“yyy”],[id:1,代码:“”]。
我想插入用户选择此mscode的次数。
请为我提供一个解决方案,忽略这一点,并保存记录。这是非常需要的。
暂无答案!
目前还没有任何答案,快来回答吧!