hibernate 中删除id为String类型的对象
先查出来对象再用getHibernateTemplate().delete(object);好点呢
还是直接用hql的delete语句,执行hql语句效率高点呢
直接用hql的delete语句,执行hql语句效率高点啊
先查出来对象再用getHibernateTemplate().delete(object);[color=red]这种方法要执行两次sql语句啊,自然效率上就慢了[/color]
从效率上来讲肯定是直接使用hql删除效率更好,但是不会更新hibernate的缓存(即如果缓存中存在此对象,hibertae不会从缓存中自动清除它),如果楼主有缓存方面的使用需求就需要多考虑一下.
用HQL进行删除,删除完后getHibernateTemplate().flush()一下
当然是直接用hql的delete语句,执行起来效率高.但是缓存方面它就不会自动更新,Hibernate利用对象完后最好能清除缓存...
而getHibernateTemplate(Object)是要先查出对象然后再删,速度就慢了..