Heim > Java > javaLernprogramm > Wie kann ich SQL-Abfragen mit echten Parameterwerten im Ruhezustand oder JDBC drucken?

Wie kann ich SQL-Abfragen mit echten Parameterwerten im Ruhezustand oder JDBC drucken?

DDD
Freigeben: 2024-12-25 00:47:21
Original
497 Leute haben es durchsucht

How Can I Print SQL Queries with Real Parameter Values in Hibernate or JDBC?

So drucken Sie eine SQL-Abfrage mit echten Parameterwerten mithilfe von Hibernate oder JDBC-Proxys

Im Ruhezustand werden generierte SQL-Abfragen stattdessen mit Fragezeichen gedruckt der realen Werte kann frustrierend sein. In diesem Artikel werden zwei Lösungen zur Überwindung dieser Einschränkung untersucht.

Lösung 1: Aktivieren der Ruhezustandsprotokollierung

Um die Protokollierung mit Parameterwerten zu aktivieren, konfigurieren Sie die folgenden Ruhezustandsprotokollierungskategorien:

  • org.hibernate.SQL (eingestellt auf debug)
  • org.hibernate.type (auf Trace setzen)

Eine Beispiel-Log4j-Konfiguration für diesen Ansatz sieht folgendermaßen aus:

# logs the SQL statements
log4j.logger.org.hibernate.SQL=debug 

# Logs the JDBC parameters passed to a query
log4j.logger.org.hibernate.type=trace 
Nach dem Login kopieren

Lösung 2: Verwendung von JDBC-Proxy-Treibern

Eine andere Alternative ist die Verwendung eines JDBC-Proxy-Treibers wie z P6Spy. Diese Treiber fangen Datenbankinteraktionen ab und überwachen sie und bieten Zugriff auf Abfrage- und Parameterinformationen.

Fazit

Mit beiden Lösungen können Sie SQL-Abfragen mit echten Werten drucken, was es einfacher macht zum Debuggen und Optimieren Ihrer Hibernate- oder JDBC-Anwendungen.

Das obige ist der detaillierte Inhalt vonWie kann ich SQL-Abfragen mit echten Parameterwerten im Ruhezustand oder JDBC drucken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage