【发布时间】:2018-07-10 12:45:36
【问题描述】:
假设我有一个 JOOQ DSLContext 对象,我需要下拉到 JDBC Connection 对象的级别来执行一些非 JOOQ 逻辑。 (就我而言,我想使用 Postgres 驱动程序的 CopyManager 对象)。
如果我的DSLContext 是事务性的,那么直接在Connection 上执行的操作会被同一个事务包装吗?我正在使用 JOOQ 的默认事务提供程序。
例如(Kotlin 代码,但对 Java 用户应该是相当透明的)
dsl.transaction { transactionConfig ->
val transactionalDSL = DSL.using(transactionConfig)
transactionalDSL.connection { connection ->
val manager = CopyManager(connection as BaseConnection)
manager.copyInto(table, inputStream, fields)
}
}
【问题讨论】:
标签: java postgresql transactions kotlin jooq