如何使用jOOQ在所有SQL查询中注入条件

时间:2015-08-04 22:36:50

标签: java jooq

我正在使用jOOQ来生成我的SQL查询,我想知道是否有办法在我的应用程序执行的所有查询中注入一个条件。

例如,我希望在应用程序执行的所有account = {accountNameHere}中都有类似SELECT的内容。由于我已经有了大量不同的查询,我想在不手动将条件添加到每个语句的情况下这样做。

有没有办法轻松使用jOOQ?也许使用VisitListener

1 个答案:

答案 0 :(得分:1)

是的,VisitListener将是将自定义谓词注入所有SELECT语句(当然包括子查询)的最彻底的方法。事实上,您正在寻找的内容有时被称为“行级安全性”(RDBMS本身支持,如OracleSQL Server)。

以下博客文章介绍了如何通过VisitListener

实现这一目标

http://blog.jooq.org/2015/06/17/implementing-client-side-row-level-security-with-jooq