如何在Java中打印Statement(CallableStatement)? [英] how to print Statement (CallableStatement) in Java?
本文介绍了如何在Java中打印Statement(CallableStatement)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何打印此OracleCallableStatement?
How can I print this OracleCallableStatement ?
ocstmt = (OracleCallableStatement) connection.prepareCall("{?= call
package.method(id => ?, name=>?)}");
ocstmt.registerOutParameter(1, OracleTypes.CURSOR);
ocstmt.setInt(2, obj.getId());
ocstmt.setString(3, obj.getName());
ocstmt.execute();
resultSet = ocstmt.getCursor(1);
我的意思是我怎么知道什么查询进入数据库,如何打印查询?因为有时它会给我一个错误,比如错误的类型,这就是为什么我要查看这个查询
What I mean is how can I know that what query goes to the database, how can I print the query? because sometimes it gives me error like "Wrong type" that is why I want to look at this query
推荐答案
你使用的是log4j吗? ?
Are you using log4j?
如果是这样,请为sql添加记录器,如下所示。
If so, add loggers for sql like below.
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG
如果您使用的是ibatis等ORM框架,可以添加额外的记录器如下。
If you are using a ORM framework such as ibatis, you could add additional logger like below.
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG
这篇关于如何在Java中打印Statement(CallableStatement)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文