如何调试使用JPA 2.0
CriteriaBuilder
构建的查询?有没有办法打印出正在执行的查询?
我正在使用NetBeans
,MySql
,GlassFish
开发一个Web应用程序。我会避免在调试模式下启动MySql,因为它也用于其他应用程序。 JPA提供商为EclipseLink
。
答案 0 :(得分:13)
persistence.xml中的同一属性也打印了从常规JPQL查询生成的SQL,还应该打印从Criteria查询生成的SQL。
E.g。
对于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"/>
答案 1 :(得分:0)
如果您正在使用java spring,请在资源下的application.properties文件中添加以下行
spring.jpa.show-sql=true