Hibernate SQLをコンソールに表示– show_sql、format_sqlおよびuse_sql_comments
Hibernateには、生成されたすべてのSQLステートメントのコンソールへのロギングを有効にする機能が組み込まれています。 これを有効にするには、Hibernate構成ファイル「hibernate.cfg.xml
」に「show_sql」プロパティを追加します。 この機能は、基本的なトラブルシューティングや、Hibernateが背後で行っていることを確認するのに適しています。
1. show_sql
生成されたすべてのSQLステートメントのコンソールへのロギングを有効にします
true
出力
Hibernate: insert into example.stock_transaction (CHANGE, CLOSE, DATE, OPEN, STOCK_ID, VOLUME) values (?, ?, ?, ?, ?, ?)
2. format_sql
生成されたSQLステートメントをフォーマットして読みやすくしますが、画面スペースをより多く使用します。 :)
true
出力
Hibernate: insert into example.stock_transaction (CHANGE, CLOSE, DATE, OPEN, STOCK_ID, VOLUME) values (?, ?, ?, ?, ?, ?)
3. use_sql_comments
Hibernateは生成されたすべてのSQLステートメント内にコメントを入れて、生成されたSQLが何をしようとしているかを示唆します。
true
出力
Hibernate: /* insert com.example.common.StockTransaction */ insert into example.stock_transaction (CHANGE, CLOSE, DATE, OPEN, STOCK_ID, VOLUME) values (?, ?, ?, ?, ?, ?)
Hibernate設定ファイル
「hibernate.cfg.xml
」の完全な例。
false com.mysql.jdbc.Driver password jdbc:mysql://localhost:3306/example root org.hibernate.dialect.MySQLDialect true true true
Hibernate SQLパラメーター値はどうですか?
この基本的なSQLロギングは、通常のデバッグには十分ですが、Hibernate SQLパラメーター値を表示することはできません。 Hibernate SQLパラメーター値をコンソールまたはファイルに表示するには、いくつかのサードパーティライブラリの統合が必要です。 次の2つの記事を確認してください。