用于HQL的Hibernate拦截器/侦听器

时间:2012-02-21 06:28:55

标签: hibernate listener

我有一个spring web应用程序,我想阻止hibernate的插入/删除/更新操作,如果httpSession中的用户是一种超级用户(其中​​user.isSuper()返回true)。

我已经为这些事件实现了侦听器,但问题是侦听器没有为HQL查询触发(session.executeUpdate())。

同样的问题也是拦截器。

请帮忙。

1 个答案:

答案 0 :(得分:1)

尝试以下代码而不是session.executeUpdate(): -

  getSessionFactory().getCurrentSession().setFlushMode(FlushMode.NEVER);
  getSessionFactory().getCurrentSession().close()