Pencetakan Rentetan Pertanyaan Hibernate dengan Nilai Parameter
Ia selalunya berguna untuk memeriksa pertanyaan SQL yang dijana oleh Hibernate, terutamanya apabila menyelesaikan masalah. Tingkah laku lalai Hibernate adalah untuk memaparkan rentetan pertanyaan dengan tanda soal (pemegang tempat) untuk nilai parameter. Walau bagaimanapun, adalah mungkin untuk mendayakan pengelogan untuk melihat pertanyaan SQL yang dijana dengan nilai parameter sebenar.
Mendayakan Pengelogan Hibernate
Untuk mendayakan pencetakan rentetan pertanyaan dengan nilai parameter, anda perlu untuk mengkonfigurasi pengelogan Hibernate untuk yang berikut kategori:
Log4j Konfigurasi
Berikut ialah contoh konfigurasi Log4j yang membolehkan pengelogan untuk kategori yang ditentukan:
# Logs the SQL statements log4j.logger.org.hibernate.SQL=debug # Logs the JDBC parameters passed to a query log4j.logger.org.hibernate.type=trace
Harta Warisan Setara
Org .hibernate.SQL logger adalah bersamaan dengan legasi hibernate.show_sql=harta sebenar, yang telah ditamatkan penggunaannya.
Pemacu Proksi JDBC
Pendekatan alternatif ialah menggunakan pemacu proksi JDBC, seperti P6Spy, yang boleh tangkap dan paparkan pertanyaan SQL (termasuk nilai parameter) tanpa mengubah suai konfigurasi Hibernate.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencetak Rentetan Pertanyaan Hibernate dengan Nilai Parameter?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!