Jdbc 预处理语句实现

Jdbc 预处理语句实现,jdbc,connection,prepared-statement,Jdbc,Connection,Prepared Statement,我想检查准备好的报表的内部工作情况。但Connection和PreparedStatement都是接口。因此,我如何检查prepareStatement(String sql)方法和setInt或setString方法的实现。它们是由用于连接数据库的JDBC驱动程序实现的。每个数据库都有自己的通信和执行SQL语句的协议。因此,如果是开源的,您可以检查数据库驱动程序的源代码。但该代码将特定于您的数据库。你到底为什么需要知道内部工作原理?javadoc中指定的契约是否足够?@JBNizet如果我使用

我想检查准备好的报表的内部工作情况。但Connection和PreparedStatement都是接口。因此,我如何检查
prepareStatement(String sql)
方法和
setInt
setString
方法的实现。

它们是由用于连接数据库的JDBC驱动程序实现的。每个数据库都有自己的通信和执行SQL语句的协议。因此,如果是开源的,您可以检查数据库驱动程序的源代码。但该代码将特定于您的数据库。你到底为什么需要知道内部工作原理?javadoc中指定的契约是否足够?@JBNizet如果我使用的是mysql,我必须在mysql-connector.jar中签入哪个类,我不知道。使用IDE查找连接和语句的实现。阅读api文档。使用调试器执行代码并查看连接实例的类名。第一步可能是简单地发出准备好的语句并在数据库中跟踪执行了哪些查询。作为下一步,JDBC驱动器可能会提供激活日志记录的选项。详细信息取决于数据库/驱动器。它们由用于连接数据库的JDBC驱动程序实现。每个数据库都有自己的通信和执行SQL语句的协议。因此,如果是开源的,您可以检查数据库驱动程序的源代码。但该代码将特定于您的数据库。你到底为什么需要知道内部工作原理?javadoc中指定的契约是否足够?@JBNizet如果我使用的是mysql,我必须在mysql-connector.jar中签入哪个类,我不知道。使用IDE查找连接和语句的实现。阅读api文档。使用调试器执行代码并查看连接实例的类名。第一步可能是简单地发出准备好的语句并在数据库中跟踪执行了哪些查询。作为下一步,JDBC驱动器可能会提供激活日志记录的选项。详细信息取决于数据库/驱动器。