hibernate 一对一双向关联 删除问题

User.hbm.xml<many-to-onename="info"class="bean.userManage.user.UserInfo"column="USERI... User.hbm.xml
<many-to-one name="info" class="bean.userManage.user.UserInfo" column="USERID" cascade="all" unique="true" />

UserInfo.hbm.xml
<one-to-one name="user" class="bean.userManage.user.User"
property-ref="info" />

说明一下 映射关系应该是没有错的 级联保存对象是可以的
后来我要删除对象的时候就出错了
大概错误信息如下:
Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
我要删除的对象是用find。。ById(..)查找出来的 方法没错 能够正确查找出对象!
但删除这个对象时就报错了!
我的删除方法如下:
public void deleteAccount(User user) {
Session session = null;
Transaction tran = null;
try {
session = sessionFactory.openSession();
tran = session.beginTransaction();
session.delete(user);
tran.commit();
} catch (HibernateException e) {
if (tran != null)
tran.rollback();
throw e;
} finally {
if (session != null)
session.close();
}

}
session 和事务都是通过spring管理的 测试没有问题的
搞不懂事怎么回事了 请大家帮帮忙!感激不尽啊!!急啊~·
解决咯~
加上:
User user1=(User)session.load(User.class,user.getAccountID());
session.delete(user1);

没等大家来回答就解决了嘛 一是来分享一下
二来大家有什么好的方法当然可以说来听听 学习学习嘛
展开
 我来答
zhaoyg
2011-02-17
知道答主
回答量:32
采纳率:0%
帮助的人:13.9万
展开全部
为什么不继承HibernateDaoSupport类?用HibernateTemplate来处理user,可以省略得到session、事物处理、捕获异常等等语句,ht.delete(ht.get(XXXX));一句就搞定了
潜水风sD
2011-02-16 · 超过28用户采纳过TA的回答
知道答主
回答量:111
采纳率:0%
帮助的人:82万
展开全部
汗!没有加载。
我之前都是用继承hibernatesuperDAO这个类的一个方法来做,写个baseDao,四个方法(增删改查),入参都是用Objeact 类型的实体对象, 这四个方法基本可以满足你整个系统所要做的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
贯真
2011-02-16 · TA获得超过2698个赞
知道大有可为答主
回答量:1022
采纳率:0%
帮助的人:1080万
展开全部
....解决了还发什么问题啊,呵呵...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式