hibernate在删除对象头里为什么要先做一次查询
hibernate在删除对象之前为什么要先做一次查询?
hibernate在删除对象的时候可以直接查找出对象后在用delete方法删除。 也可以使用hql(delete from table where id = ?)语句来删除,那么这两种方法有什么区别,为什么推荐使用第一种,先发一条查询语句再做删除,而不是直接一条查询语句删除呢?
------解决方案--------------------
直接用hql多好啊,你为什么说第一种好呢
------解决方案--------------------
主键删除,用hql语言写,可以大批量删除,一个个对象删,显然效率不行的啊
------解决方案--------------------
查出来是要看看有没有关联的对象,为级联删除做准备。 自己写当然最要好了, 直接告诉hibernate怎么做!
------解决方案--------------------
第二种效率高,先查出来是放到session缓存中了,而后同步物理数据库!按照hibernate的思想一般是以对象为基础进行操作!
hibernate在删除对象的时候可以直接查找出对象后在用delete方法删除。 也可以使用hql(delete from table where id = ?)语句来删除,那么这两种方法有什么区别,为什么推荐使用第一种,先发一条查询语句再做删除,而不是直接一条查询语句删除呢?
------解决方案--------------------
直接用hql多好啊,你为什么说第一种好呢
------解决方案--------------------
主键删除,用hql语言写,可以大批量删除,一个个对象删,显然效率不行的啊
------解决方案--------------------
查出来是要看看有没有关联的对象,为级联删除做准备。 自己写当然最要好了, 直接告诉hibernate怎么做!
------解决方案--------------------
第二种效率高,先查出来是放到session缓存中了,而后同步物理数据库!按照hibernate的思想一般是以对象为基础进行操作!