使用hibernate拦截器拦截查询结果

时间:2018-04-06 09:49:32

标签: java hibernate spring-mvc queryinterceptor

我想拦截使用hibernate从数据库获取数据,如果在我的数据中存在特定字段,则获取值并检查该值是否适用于查询它的用户。

我的应用程序使用spring mvc和hibernate。我在会话工厂级别配置了一个拦截器。

function autoSize() {
  if (element) {
    element.setAttribute('rows', 2) // minimum rows
    const rowsRequired = parseInt(
      (element.scrollHeight - TEXTAREA_CONFIG.PADDING) / TEXTAREA_CONFIG.LINE_HEIGHT
    )
    if (rowsRequired !== parseInt(element.getAttribute('rows'))) {
      element.setAttribute('rows', rowsRequired)
    }
  }
}

在我的spring-dao.xml中

class AuditInterceptor extends EmptyInterceptor {

    @Override
    public Object instantiate(String entityName, EntityMode entityMode, Serializable id) {
        System.out.println("******************************* instantiated ****************************");
        return null;
    }

    @Override
    public boolean onLoad(Object entity, Serializable id, Object[] state, String[] propertyNames, Type[] types) {
        System.out.println("******************************* on load ****************************");
        return true;
    }
}

我希望每当query.list()执行时它应该能够使用上面的inteceptor拦截数据。

现在,它在我的应用程序启动时调用我的拦截器。我无法获取验证数据。(我想在拦截器中执行验证)

0 个答案:

没有答案