1,hibernate中用hql怎么执行delete的sql语句
3个回答
展开全部
你可以使用一楼的方式
如果使用hql方式,参考如下:
public void testDml(){
Session session = null;
Transaction tx = null;
try {
session = HibernateUtils.getSession();
tx = session.getTransaction();
session.beginTransaction();
Query query = session.createQuery("delete Student s where s.id=?");
query.setInteger(0, 1);
query.executeUpdate();
tx.commit();
} catch (HibernateException e) {
tx.rollback();
e.printStackTrace();
}finally{
HibernateUtils.closeSession(session);
}
}
如果使用hql方式,参考如下:
public void testDml(){
Session session = null;
Transaction tx = null;
try {
session = HibernateUtils.getSession();
tx = session.getTransaction();
session.beginTransaction();
Query query = session.createQuery("delete Student s where s.id=?");
query.setInteger(0, 1);
query.executeUpdate();
tx.commit();
} catch (HibernateException e) {
tx.rollback();
e.printStackTrace();
}finally{
HibernateUtils.closeSession(session);
}
}
展开全部
Session s = this.getHibernateTemplate().getSessionFactory().openSession();//获取session
Transaction tx = s.beginTransaction(); //打开事务(针对读数据库)
String hql="delete .... where a=?...";//准备hql
s.createQuery(hql).setString("a",值).executeUpdate();//更新
tx.commit();//提交事务
s.close(); //关闭session
Transaction tx = s.beginTransaction(); //打开事务(针对读数据库)
String hql="delete .... where a=?...";//准备hql
s.createQuery(hql).setString("a",值).executeUpdate();//更新
tx.commit();//提交事务
s.close(); //关闭session
参考资料: Q
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
getHibernateTemplate().delete(Entity)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询