Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 查看Jasper报表执行的SQL_Java_Sql_Jasper Reports - Fatal编程技术网

Java 查看Jasper报表执行的SQL

Java 查看Jasper报表执行的SQL,java,sql,jasper-reports,Java,Sql,Jasper Reports,运行Jasper报表时,如果报表文件(.jrxml)中嵌入了SQL,是否可以看到执行的SQL?理想情况下,我还希望看到每个$P{}占位符被替换的值 干杯 Don您可以调整log4j设置以记录正在运行的SQL…如果您使用的是Ms SQL,则可以使用SQL profiler查看服务器上执行的每个查询 编辑:下面是一篇关于在MySql服务器上启用sql查询日志的文章:JasperReports使用Jakarta Commons日志API。 Commons日志有一个发现机制,它连接到您在项目中使用的日志

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

干杯


Don

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

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


编辑:下面是一篇关于在MySql服务器上启用sql查询日志的文章:

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

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

如果您使用的是Log4j,您可以阅读其中的文档以了解确切的细节

例如,您可以在log4j.properties文件中编写类似的内容

log4j.logger.net.sf.jasperreports=INFO,每日


其中“Daily”是在同一属性文件中配置的追加器的名称。

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

知道什么设置可以实现这一点吗?我在此处找到了在windows上启用MySQL查询日志的说明:因为链接已失效!请你在这里详细说明log4j的设置。这看起来像是新的链接,但我没有机会验证