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!