Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Log Pertanyaan SQL dengan Nilai Parameter dalam Hibernate?

Bagaimanakah Saya Boleh Log Pertanyaan SQL dengan Nilai Parameter dalam Hibernate?

Barbara Streisand
Barbara Streisandasal
2025-01-22 22:36:14916semak imbas

How Can I Log SQL Queries with Parameter Values in Hibernate?

Memantau Pertanyaan dan Parameter SQL Hibernate

Menyahpepijat aplikasi Hibernate selalunya memerlukan pemeriksaan pertanyaan SQL yang dijana, termasuk nilai parameternya. Pengelogan Hibernate Standard hanya menunjukkan tanda soal pemegang tempat dan bukannya nilai sebenar. Artikel ini memperincikan cara mendedahkan nilai ini.

Memanfaatkan Pengelogan Terbina dalam Hibernate

Hibernate menawarkan dua kategori pengelogan untuk visualisasi pertanyaan terperinci:

  • org.hibernate.SQL (tahap nyahpepijat): Memaparkan semua pernyataan Bahasa Manipulasi Data SQL (DML) yang dilaksanakan.
  • org.hibernate.type (tahap surih): Mendedahkan semua parameter JDBC yang digunakan dalam setiap pertanyaan.

Dayakan fungsi pengelogan ini dengan menambahkan baris ini pada log4j fail konfigurasi anda:

<code># Displays SQL statements
log4j.logger.org.hibernate.SQL=debug

# Displays JDBC parameters
log4j.logger.org.hibernate.type=trace</code>

Alternatif: Menggunakan Pemacu Proksi JDBC

Bagi mereka yang memilih alternatif daripada pengelogan asli Hibernate, pemacu proksi JDBC seperti P6Spy menawarkan penyelesaian yang mantap. Pemandu ini memintas dan mengubah suai panggilan JDBC, memberikan pandangan pra-pelaksanaan pertanyaan untuk analisis komprehensif.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Log Pertanyaan SQL dengan Nilai Parameter dalam Hibernate?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn