我在java中编写hibernate查询..
在我的应用程序中,我将用户和他的业务伙伴作为另一个用户。
创建用户时,他可以选择已存在的合作伙伴作为另一个用户。
尚未创建新用户对象,因此它为null
user.setUserId(null)//as hibernate automatically increment the userId value
anotheruser.setPartnerId(user.getUserId())
userSet.getPartners.add(user);
session.save(userSet);
它显示了transientobjectexception ..
我认为这是因为主要密钥在保存之前尚未分配,这就是为什么它不能setpartnerid那里..可以任何人给出建议如何实现这个的最好方法..
感谢
答案 0 :(得分:1)
在保存user
之前,请尝试保存userSet
。我的猜测是没有为该集合配置级联保存,因此您尝试保存到未保存的瞬态引用(用户)的链接。
你应该将你的实体类和映射添加到问题中,否则一切都在猜测!