1、不使用spring对hibernate的支持
String hql = "delete from Item where orderId = ";
Session session = this.getSession();
session.createQuery(hql).setInteger(0, orderId).executeUpdate();
session.close();
2、使用spring对hibenrate的支持
final int orderId1 = orderId;
this.getHibernateTemplate().execute(new HibernateCallback() {
@Override
public Object doInHibernate(Session session) throws HibernateException,
SQLException {
String hql = "delete from Item where orderId = ";
return session.createQuery(hql).setInteger(0, orderId1).executeUpdate();
}
});
对于以上两种方法,一个比较显著的区别就在于后者将session的关闭交给了框架去处理。