Hibernate 使用時にパラメータ値を含むクエリ文字列を出力する方法 質問する

Hibernate 使用時にパラメータ値を含むクエリ文字列を出力する方法 質問する

Hibernate では、生成された SQL クエリを疑問符ではなく実際の値で印刷することは可能ですか?

Hibernate API では不可能な場合、実際の値でクエリを印刷するにはどうすればよいでしょうか?

ベストアンサー1

有効にする必要がありますログ記録以下のカテゴリーについて:

  • org.hibernate.SQL   -debug実行時にすべてのSQL DMLステートメントをログに記録するには に設定します
  • org.hibernate.type-traceすべてのJDBCパラメータをログに記録するにはに設定します

したがって、log4j の構成は次のようになります。

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

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

hibernate.show_sql=true1つ目はレガシーに相当する財産2 番目は、バインドされたパラメータなどを出力します。

別の解決策(Hibernateベースではない)としては、次のようなJDBCプロキシドライバを使用することです。P6スパイ

おすすめ記事