如何获得PreparedStatement最终执行的sql语句?这个是链接地址http://www.javaworld.com/javaworld/jw-01-2
如何获得PreparedStatement最终执行的sql语句
?
这个是链接地址
http://www.javaworld.com/javaworld/jw-01-2002/jw-0125-overpower.html
?
自己试了试,成功。
靠谱,推荐大家使用。
?
?
Connection con = DriverManager.getConnection(url);DebugLevel debug = DebugLevel.ON;String sql = "SELECT name,rate FROM EmployeeTable WHERE rate > ?";//Use a factory instead of Connection to get a PreparedStatement.//PreparedStatement ps = con.prepareStatement(sql); PreparedStatement ps = StatementFactory.getStatement(con,sql,debug); ps.setInt(1,25);//If ps is a DebuggableStatement, you see the statement,//otherwise, an object identifier is displayed System.out.println(" debuggable statement= " + ps.toString());
?
?
附件是这段代码中用到的类。
?
?
?
?
?
?
?
1 楼 jianxia801 2012-07-09 哥们你在使用的过程中,此类 DebuggableStatement 是不是还有未实现的方法呢?不知道你是怎么解决的? 2 楼 huiminchen 2012-07-09 jianxia801 写道哥们你在使用的过程中,此类 DebuggableStatement 是不是还有未实现的方法呢?不知道你是怎么解决的?
你好,兄台。不知道你指的是什么问题呢? 3 楼 jianxia801 2012-07-09 主要报DebuggableStatement 类里面未实现:方法。如下截图。
4 楼 jianxia801 2012-07-09 34 methods to implement:
- java.sql.Statement.execute()
- java.sql.Statement.execute()
- java.sql.Statement.execute()
- java.sql.Statement.executeUpdate()
- java.sql.Statement.executeUpdate()
- java.sql.Statement.executeUpdate()
- java.sql.Statement.getGeneratedKeys()
- java.sql.Statement.getMoreResults()
- java.sql.Statement.getResultSetHoldability()
- java.sql.Statement.isClosed()
- java.sql.Statement.isPoolable()
- java.sql.Statement.setPoolable()
- java.sql.Wrapper.isWrapperFor()
- java.sql.Wrapper.unwrap()
-
java.sql.PreparedStatement.getParameterMetaData()
- java.sql.PreparedStatement.setAsciiStream()
- java.sql.PreparedStatement.setAsciiStream()
- java.sql.PreparedStatement.setBinaryStream()
- java.sql.PreparedStatement.setBinaryStream()
- java.sql.PreparedStatement.setBlob()
- java.sql.PreparedStatement.setBlob()
-
java.sql.PreparedStatement.setCharacterStream()
-
java.sql.PreparedStatement.setCharacterStream()
- java.sql.PreparedStatement.setClob()
- java.sql.PreparedStatement.setClob()
-
java.sql.PreparedStatement.setNCharacterStream()
-
java.sql.PreparedStatement.setNCharacterStream()
- java.sql.PreparedStatement.setNClob()
- java.sql.PreparedStatement.setNClob()
- java.sql.PreparedStatement.setNClob()
- java.sql.PreparedStatement.setNString()
- java.sql.PreparedStatement.setRowId()
- java.sql.PreparedStatement.setSQLXML()
- java.sql.PreparedStatement.setURL() 5 楼 huiminchen 2012-07-09 jianxia801 写道主要报DebuggableStatement 类里面未实现:方法。如下截图。
你好
这个是我很久之前做的了
虽然记不太清楚,但也没有这么多方法要实现吧……
我用的就是PreparedStatement
具体,你可以参考链接http://www.javaworld.com/javaworld/jw-01-2002/jw-0125-overpower.html 6 楼 jianxia801 2012-07-10 我也看过http://www.javaworld.com/javaworld/jw-01-2002/jw-0125-overpower.html 文章;但是DebuggableStatement有一些方法未实现;感觉此文章不错,推荐给大家 http://www.javaworld.com.tw/roller/jiaming/entry/2007_4_13_PreparedStatement_Proxy_Design_Pattern