如何查看hibernate触发的查询?

时间:2010-12-07 03:26:21

标签: java hibernate tomcat

当在tomcat中运行hibernate应用程序时,如何查看hibernate正在触发哪些查询?

3 个答案:

答案 0 :(得分:16)

快速回答是

hibernate.show_sql=true 

e.g。如http://www.javalobby.org/java/forums/t44119.html

从官方文件中可以看出:

<强> hibernate.show_sql

将所有SQL语句写入控制台。这是将日志类别org.hibernate.SQL设置为debug的替代方法。 例如是的|假

hibernate.format_sql

在日志和控制台中打印SQL。例如是的|假

也可以看到这个问题:Hibernate show real SQL

答案 1 :(得分:5)

另外,如果要显示参数的值,可以添加

log4j.logger.org.hibernate.type=trace

到你的log4j属性文件。

答案 2 :(得分:2)

另一种选择是P6Spy。它拦截JDBC驱动程序并记录所有事务。

http://sourceforge.net/projects/p6spy/