ホームページ >Java >&#&チュートリアル >Hibernate または JDBC で実際のパラメータ値を含む SQL クエリを出力するにはどうすればよいですか?

Hibernate または JDBC で実際のパラメータ値を含む SQL クエリを出力するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-25 00:47:21477ブラウズ

How Can I Print SQL Queries with Real Parameter Values in Hibernate or JDBC?

Hibernate または JDBC プロキシを使用して実際のパラメーター値を含む SQL クエリを出力する方法

Hibernate では、代わりに疑問符を付けて生成された SQL クエリを出力します実際の値を理解するのはイライラするかもしれません。この記事では、この制限を克服するための 2 つの解決策について説明します。

解決策 1: Hibernate ログを有効にする

パラメータ値を使用してログを有効にするには、次の Hibernate ログ カテゴリを設定します。

  • org.hibernate.SQL (に設定debug)
  • org.hibernate.type (トレースに設定)

このアプローチのサンプル 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 

解決策 2: JDBC プロキシ ドライバーを使用する

もう 1 つの代替案は、 P6Spy などの JDBC プロキシ ドライバーを使用します。これらのドライバーは、データベースの対話を傍受して監視し、クエリおよびパラメーター情報へのアクセスを提供します。

結論

どちらのソリューションでも、実際の値を含む SQL クエリを出力できるため、簡単になります。 Hibernate または JDBC アプリケーションをデバッグおよび最適化します。

以上がHibernate または JDBC で実際のパラメータ値を含む SQL クエリを出力するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。