Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Melihat Nilai Parameter Sebenar dalam Pertanyaan SQL Hibernate Saya?
Kaedah melihat parameter pertanyaan SQL Hibernate
Apabila melaksanakan pertanyaan dengan Hibernate, selalunya berguna untuk melihat nilai parameter sebenar dihantar ke pangkalan data.
Bolehkah Hibernate memaparkan secara langsung nilai parameter sebenar?
Malangnya, Hibernate sendiri tidak menyediakan mekanisme untuk terus mencetak pertanyaan SQL yang mengandungi nilai parameter sebenar. Tanda soal dalam pernyataan SQL mewakili parameter pemegang tempat, dan Hibernate tidak akan menggantikannya secara automatik dengan nilai parameter sebenar.
Alternatif Pembalakan
Untuk melihat rentetan pertanyaan SQL sebenar yang mengandungi nilai parameter, anda boleh mendayakan pengelogan untuk kelas Hibernate tertentu:
Konfigurasi log4j berikut menggambarkan pendekatan ini:
<code>log4j.logger.org.hibernate.SQL=debug # 记录传递给查询的JDBC参数 log4j.logger.org.hibernate.type=trace</code>
Kaedah ini serupa dengan atribut hibernate.show_sql=true
lama. Perlu diingat bahawa mendayakan pengelogan org.hibernate.type
akan merekodkan lebih banyak maklumat, termasuk parameter pengikatan.
Pemandu proksi luaran
Kaedah lain ialah menggunakan pemacu proksi JDBC seperti P6Spy. P6Spy memintas panggilan JDBC dan membolehkan anda memeriksa pertanyaan SQL sebenar dan nilai parameter yang dihantar ke pangkalan data.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melihat Nilai Parameter Sebenar dalam Pertanyaan SQL Hibernate Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!