Hibernate SQLをコンソールに表示する - showsql、formatsql、usesqlcomments

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つの記事を確認してください。