如何调试JPA CriteriaBuilder查询

问题描述 投票:5回答:2

如何调试用JPA 2.0 CriteriaBuilder构建的查询?有没有办法打印出正在执行的查询?

我正在使用NetBeansMySqlGlassFish开发Web应用程序。我将避免以调试模式启动MySql,因为它也用于其他应用程序。 JPA提供程序是EclipseLink

java mysql jpa eclipselink criteria-api
2个回答
14
投票

persistence.xml中的相同属性还可以打印从常规JPQL查询生成的SQL,还应该打印从Criteria查询生成的SQL。

例如

对于Hibernate(例如,由JBoss AS使用):

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

对于EclipseLink(例如,由GlassFish使用):

<property name="eclipselink.logging.level" value="FINE"/>
<property name="eclipselink.logging.parameters" value="true"/>

另请参见:How to view the SQL queries issued by JPA?


0
投票

如果您使用的是java spring,请在资源下的application.properties文件中,添加以下行

spring.jpa.show-sql=true
© www.soinside.com 2019 - 2024. All rights reserved.