我使用准备好的声明中这样结合
PreparedStatement pstmt = getConnection().prepareStatement(INSERT_QUERY);
pstmt.setInt(1,userDetails.getUsersId());
log.debug("SQL for inserting child transactions " + pstmt.toString());
我想结合到日志文件后记录的确切的SQL语句,但这个东西是不工作后,如何让准备好的语句查询。它记录的东西就像SQLServerPreparedStatement:7
。我在网上搜索,但没有得到满意的答案。任何帮助将不胜感激。
这取决于正在使用的JDBC驱动程序(和DBMS)。有些人在调用PreparedStatement.toString()时显示绑定变量,有些则不显示。如果你有一个不是唯一选项的驱动程序,那就是编写一个捕获'setXXX()'方法并存储参数值的包装器。 –