0

我有一个使用 plv8 引擎的数据库,并且有用 coffescript 编写的存储过程。

当我使用 jDBI 时,为了调用这些程序,在我打开连接后我必须运行:

SET plv8.start_proc = 'plv8_init';

将 JOOQ 与 javax.sql.DataSource 一起使用时,我可以做类似的事情吗?

4

1 回答 1

0

一种选择是使用ExecuteListener. executeStart()您可以通过实现以下方法来挂钩查询执行生命周期:

new DefaultExecuteListener() {
    @Override
    public void executeStart(ExecuteContext ctx) {
        DSL.using(ctx.connection()).execute("SET plv8.start_proc = 'plv8_init'");
    }
}

现在,将上述内容ExecuteListener提供给您的Configuration,您就完成了。

另见手册: http ://www.jooq.org/doc/latest/manual/sql-execution/execute-listeners

于 2016-07-22T21:35:37.330 回答