查看Jasper报告执行的SQL



当运行Jasper报告时,其中SQL嵌入到报告文件(.jrxml)中,是否可以看到执行的SQL?理想情况下,我还希望看到被替换为每个$P{}占位符的值。

干杯,

Don

JasperReports使用Jakarta Commons Logging API。Commons日志记录有一个发现机制,该机制连接到您在项目中使用的日志记录API。

您需要在日志配置文件中配置名为"net.sf.jasperreports"的记录器,以控制jasperreports的日志级别。

如果您正在使用Log4j,您可以阅读该文档的这一部分以了解确切的详细信息。

例如,您可以在log4j.properties文件中写这样的内容

log4j.logger.net.sf.jasperreports=信息,每日

其中"Daily"是在同一个属性文件中配置的附加程序的名称。

另一个选项是使用p6spy。P6Spy是一种介于应用程序和真正JDBC驱动程序之间的"代理JDBC驱动程序",它可以记录它所看到的一切。您应该可以在此处下载副本:http://www.p6spy.com/

如果您使用的是Ms SQL,则可以使用SQL探查器来查看服务器上执行的每个查询。

编辑:下面是一篇关于在MySql服务器上启用sql查询日志记录的文章:http://www.howtogeek.com/howto/database/monitor-all-sql-queries-in-mysql/

您可以调整log4j设置来记录正在运行的SQL。。。

最新更新