2011-12-29 57 views
5

如何調試與JPA 2.0CriteriaBuilder建一個查詢?有沒有辦法打印出正在執行的查詢?如何調試JPA CriteriaBuilder查詢

我正在開發一個web應用程序,使用NetBeans,MySql, GlassFish。我會避免在調試模式下啓動MySql,因爲它也用於其他應用程序。 JPA提供者是EclipseLink

+0

哪些JPA提供商做你使用(例如OpenJPA,Hibernate)? – home 2011-12-29 19:13:46

+0

@home,我已添加您要求的信息 – perissf 2011-12-29 19:16:48

+0

沒有問題;檢查此:http://stackoverflow.com/questions/2374395/is-it-possible-to-output-generated-sql-using-eclipselink-without-having-to-incre – home 2011-12-29 19:19:36

回答

13

persistence.xml中相同的屬性也打印從常規JPQL查詢生成的SQL,還應該打印從條件查詢生成的SQL。

E.g.

對於休眠(例如通過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?