例如,在EclipseLink中使用@AdditionalCriteria很容易过滤掉软删除的实体,但是在执行特定查询之前,有什么方法可以暂时禁用它吗?
最佳答案
是的,可以通过一种简单的解决方法来实现。我指定了@AdditionalCriteria批注,如下所示:
@AdditionalCriteria(":disableDeletedFeature = 1 or this.isDeleted = false")
并在persistence.xml中为disable标志指定了默认属性值:
<property name="disableDeletedFeature" value="0"/>
因此,默认情况下启用了过滤功能,但您可以在EntityManager级别轻松禁用它,如下所示:
entityManager.setProperty("disableDeletedFeature", 1);
对我来说一切正常,希望对您有所帮助!
关于eclipselink - 有没有一种方法可以在EclipseLink中禁用@AdditionalCriteria?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15847792/