Abfragezeichenfolge mit Parameterwert im Ruhezustand abrufen
Die Implementierung von Hibernate-Abfragen kann die Verwendung von Parameterplatzhaltern (Fragezeichen) zur Darstellung dynamischer Werte in SQL-Anweisungen beinhalten. Obwohl dieser Ansatz effizient ist, kann er den Einblick in die tatsächliche Ausführung der Abfrage beeinträchtigen.
Hibernate-API verwenden
Die API von Hibernate selbst unterstützt das Drucken von Abfragezeichenfolgen mit Parameterwerten nicht direkt.
Protokollierung verwenden
Eine Alternative besteht darin, die Protokollierung für die folgenden Kategorien zu aktivieren:
In einer log4j-Konfiguration könnte dies wie folgt aussehen:
<code># 记录SQL语句 log4j.logger.org.hibernate.SQL=debug # 记录传递给查询的JDBC参数 log4j.logger.org.hibernate.type=trace </code>
Diese Methode ähnelt hibernate.show_sql=true, gibt aber auch die gebundenen Parameter aus.
Lösung ohne Ruhezustand: JDBC-Proxy-Treiber
Eine weitere Option ist die Verwendung eines JDBC-Proxy-Treibers wie P6Spy. Dieses Tool fängt JDBC-Aufrufe ab und protokolliert sie und bietet Einblick in die eigentliche Abfrage und ihre Parameter.
Das obige ist der detaillierte Inhalt vonWie kann ich Hibernate-Abfragezeichenfolgen mit ihren Parameterwerten abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!