datasqill provides a JDBC proxy that can be used freely.
The proxy can be placed between a Java application and any 3rd party JDBC driver. Use cases for such a proxy include measuring runtimes, logging JDBC calls, or standardizing the behavior of JDBC drivers and encapsulating specific peculiarities of these drivers.