ホームページ >データベース >mysql チュートリアル >Hibernate SQL クエリを実際のパラメータ値とともにログに記録するにはどうすればよいですか?
Hibernate でパラメータ値を含むクエリを出力します
Hibernate を使用する場合、多くの場合、パラメーター値を含め、実行された実際の SQL クエリを表示する必要があります。 Hibernate のデフォルトの動作では、パラメーター値のプレースホルダーとして疑問符 (?) を使用して SQL クエリをログに記録します。
Hibernate API を使用して実際の値を含むクエリを出力することは可能ですか?
いいえ、Hibernate は実際の値を含む SQL クエリを出力する API を提供しません。
実際の値を含むクエリを出力する方法
この機能が動作するには、次のカテゴリのログを有効にする必要があります:
<code>org.hibernate.SQL - 设置为debug以记录所有SQL DML语句的执行情况 org.hibernate.type - 设置为trace以记录所有JDBC参数</code>
Log4j 構成例:
<code># 记录SQL语句 log4j.logger.org.hibernate.SQL=debug # 记录传递给查询的JDBC参数 log4j.logger.org.hibernate.type=trace</code>
最初の設定は Hibernate の古いプロパティ hibernate.show_sql=true に相当し、2 番目の設定はバインド パラメータとその他の情報を出力します。
代替案
Hibernate のログが不十分な場合は、P6Spy などの JDBC プロキシ ドライバーを使用して、パラメーター値を含む SQL クエリをキャプチャしてログに記録できます。
以上がHibernate SQL クエリを実際のパラメータ値とともにログに記録するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。