如何执行更新hibernate查询

时间:2011-03-16 07:22:48

标签: hibernate

如何运行此查询

update User user 
set user.status = 1 
where user.status = 0 
  and user.uiid = 12 or user.uiid =13 or user.uiid =14 or user.uiid =15

getHibernateTemplate()

我的意思是`getHibernateTemplate()。我的询问......

请举个例子..

由于

2 个答案:

答案 0 :(得分:4)

面向对象的方式:

foreach(int id in ids)
{
  User user = session.get<User>(id);
  user.status = 1;
}

hql方式:

session
  .createQuery("update User set status = :status where id in (:ids)");
  .setInt("status", status)
  .setParameterList("ids", ids)
  .executeUpdate();

这取决于你在整个交易中做了什么来说明哪种方式更好。

答案 1 :(得分:0)