2

添加了一个 java 实体类@Filter

在使用带有休眠服务的实体类时,所有查询都将添加带有 where 条件的过滤器。对于一种情况,我需要忽略这一点。我是说:

entityManager.CreateQuery("SELECT * from ABCTABLE where tenant_id=9999");

在上面的查询中,我添加了通用过滤器tenant_id,并且对于上面的查询,我必须忽略该通用过滤器。

4

1 回答 1

1

Session.enableFilter(String filterName)您可以使用和启用/禁用过滤器Session.disableFilter(String filterName)。因此,您可以在执行查询之前禁用过滤器,然后再启用它。请记住,EntityManager不支持这一点,因此您可以访问 Hibernate 会话,例如:

((Session)entityManager.getDelegate()).disableFilter(filterName);
于 2013-06-13T05:43:20.657 回答