首页 > 解决方案 > 如何计算使用 Hibernate 对 H2 数据库进行的 SQL 查询的数量

问题描述

如何计算使用 Hibernate (4.3.11) 对 H2 (1.3.172) 数据库进行的 SQL 查询的数量。

我只需要在长时间运行的任务(几个小时)结束时进行总计数,我不需要跟踪实际查询本身。

有没有一种简单的方法可以做到这一点,理论上我可以用 Hibernate 或 H2 做,但我找不到解决方案。

标签: javahibernateh2

解决方案


这篇文章应该可以帮助你。

https://www.thoughts-on-java.org/hibernate-tips-count-executed-queries-session/

总之,您首先需要将此属性添加到您的配置中。

<property name="hibernate.generate_statistics" value="true" />

然后,您必须在您的 DAO 中添加以下行。

Statistics stats = sessionFactory.getStatistics();
long queryCount = stats.getQueryExecutionCount();

希望能帮助到你。


推荐阅读