我正在使用vert.x的JDBCClient来获取我的数据库连接,它只给了我io.vertx.ext.sql.SQLConnection或io.vertx.reactivex.ext.sql.SQLConnection,它们都没有扩展java.sql ■连接。
为了从Verticle调用Liquibase,我需要一个java.sql.Connection。
我知道Vert.x在后面使用了C3Po但是我找不到任何可以给我底层连接的方法。
我怎样才能实现这一目标?
答案 0 :(得分:3)
如果您使用的是最新版本,则SQLConnection
采用unwrap
方法。如docs:
default <N> N unwrap()
返回基础Connection对象(如果可用)。这不是由客户强制执行的。
JDBCClient应返回java.sql.Connection
。使用后请不要忘记在原始close
上致电SQLConnection
。
答案 1 :(得分:-1)
您是否尝试过:
final JDBCClient dbClient = JDBCClient.createShared(vertx, new JsonObject()
.put("url", dbUrl)
.put("user", user)
.put("password", pass)
.put("driver_class", "you.driver")
.put("max_pool_size", 30)
);