HQL删除查询和session.delete()之间的区别

时间:2011-05-09 13:07:33

标签: java hibernate hql-delete

我对Hibernate很新,并且有一个问题。使用HQL查询删除对象和使用delete(...)类的Session方法删除对象有什么区别?

1 个答案:

答案 0 :(得分:3)

Session.delete(...)仅在您已经拥有要删除的实体的引用时才有用。

按查询删除对于根据特定条件删除多个对象非常有用,这些标准可能是您之前未加载到会话中的对象。

我认为按查询删除实际上会将每个实体加载到会话中并单独删除它们 - 如果我错了,有人会纠正我。