Wenn Sie in der Konfigurationsdatei hibernate.cfg.xml show_sql auf true setzen, werden SQL-Anweisungen auf der Konsole angezeigt. Dies ist jedoch nicht das „echte“ SQL, das an die Datenbank übergeben wird. Ist es möglich, die ursprüngliche SQL-Abfrage zu erhalten?
Ja, es gibt zwei Möglichkeiten, die Roh-SQL-Abfrage abzurufen:
JDBC-Treiber-Proxy:
Verwenden Sie einen JDBC-Treiber-Proxy wie P6Spy oder log4jdbc. Diese Tools fangen an die Datenbank gesendete SQL-Befehle ab und liefern detaillierte Informationen, einschließlich der eigentlichen SQL-Abfrage.
Protokollierung im Ruhezustand:
Aktivieren Sie die Protokollierung für die folgenden Kategorien:
<code>log4j.logger.org.hibernate.SQL=DEBUG log4j.logger.org.hibernate.type=TRACE</code>
Hibernate 3.5-Kerndokumentation:
Hibernate 4.1-Kerndokumentation:
Das obige ist der detaillierte Inhalt vonWie kann ich die tatsächlich von Hibernate ausgeführten Raw-SQL-Abfragen anzeigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!