Heim >Java >javaLernprogramm >Wie kann ich SQL-Abfragen mit Parameterwerten im Ruhezustand drucken?
Einführung:
Bei der Verwendung von Hibernate kann das Drucken hilfreich sein Geben Sie die generierten Abfragen zusammen mit den tatsächlichen Parameterwerten aus. Dies kann für Debugging-Zwecke oder zum Verständnis der Leistungsmerkmale einer bestimmten Abfrage nützlich sein.
Ist das mit der Hibernate-API möglich?
Ja, das ist möglich Drucken Sie Abfragen mit Parameterwerten mithilfe der Hibernate-API. Dazu müssen Sie die Protokollierung für die folgenden Kategorien aktivieren:
Konfiguration Beispiel:
Eine log4j-Konfiguration, die die Protokollierung für diese Kategorien ermöglicht, könnte wie folgt aussehen:
# logs the SQL statements log4j.logger.org.hibernate.SQL=debug # Logs the JDBC parameters passed to a query log4j.logger.org.hibernate.type=trace
Die erste Option (hibernate.show_sql) ist das Legacy-Äquivalent von log4j.logger .org.hibernate.SQL=debug, während die zweite Option die gebundenen Parameter zusammen mit anderen ausgibt Informationen.
Alternative Lösung ohne Ruhezustand:
Wenn Sie die Hibernate-API lieber nicht zum Drucken von Abfragen mit Parameterwerten verwenden möchten, können Sie einen JDBC-Proxy-Treiber wie verwenden P6Spy. Dieser Treiber fungiert als Proxy zwischen Ihrer Anwendung und der Datenbank und protokolliert alle JDBC-Anweisungen und Parameter, die ihn durchlaufen.
Das obige ist der detaillierte Inhalt vonWie kann ich SQL-Abfragen mit Parameterwerten im Ruhezustand drucken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!