HikariCP 可以显示 sql 吗?

Can HikariCP show sql?

我查看了源代码,我找不到任何关于显示的错误 sql。那可能吗,还是我必须自己记录它们? 我只在 HikariConfigHikariPoolHikariDataSource 中找到一些登录。 None 个可以帮助我。

HikariCP是一个连接池,和执行没有太大关系SQL。如果您想查看 SQL,请参阅您的 ORM(例如 Hibernate)或 JDBC 驱动程序的文档。

如果您使用的是直接JDBC,那么自动记录的希望不大。根据所使用的数据库/驱动程序,您可能会从 PreparedStatement.toString() 中得到一个很好的表示,如本答案中所述:Get query from java.sql.PreparedStatement

数据库本身当然能够记录查询,因此这也是一个解决方案,除非您需要在 Java 端记录它们。也可以将网络流量记录到数据库中,但这可能很棘手,并且与数据库查询日志存在相同的问题。

最后,您可以尝试实现一些 wrapper/proxy 解决方案,它将自动记录日志。但我怀疑这有一些问题,因为我想不出任何现有的图书馆会这样做。