问题描述:绿色箭头的删除操作需要依据红色箭头删除的结果,但在实际运行中绿色箭头所指删除操作无法得到红色箭头的删除结果。
分析原因:红色箭头执行的是hql,执行的结果存放在session事物中,而数据库中的数据只有事物执行完后才会改变;绿色箭头执行的是sql,直接进行数据库操作,而此时数据库中的数据没有发生改变。
解决方法:把绿色箭头的操作改为hql如图:
Hibernate做同一个事物中做两次删除问题
最新推荐文章于 2024-08-07 10:17:33 发布
问题描述:绿色箭头的删除操作需要依据红色箭头删除的结果,但在实际运行中绿色箭头所指删除操作无法得到红色箭头的删除结果。
分析原因:红色箭头执行的是hql,执行的结果存放在session事物中,而数据库中的数据只有事物执行完后才会改变;绿色箭头执行的是sql,直接进行数据库操作,而此时数据库中的数据没有发生改变。
解决方法:把绿色箭头的操作改为hql如图: