2016-09-05 10 views
1

JdbcTemplateを使用してMySQLデータベースでクエリを実行するアプリケーションがあります。 JdbcTemplateがorg.springframework.dao.DataAccessExceptionをスローすると、例外のスタックトレースが記録されます。しかし、私は例外がスローされる原因となったSQLクエリも含めたいと思います。これを行う簡単な方法はありますか?JdbcTemplateが使用されている場所ごとにカスタムエラーメッセージを書き込む必要はありませんか?SpringのDataAccessExceptionを引き起こすSQLクエリを取得することはできますか?

答えて

1

例外時にSQL文を記録するだけの場合は、独自のカスタムサブクラスJdbcTemplateを作成し、ソースコードのログ前提条件をGithubに変更する必要があります。

そうでない場合は、次の点を考慮する必要があります。

Spring documentationから、すべてのSQL文はDEBUGレベルでログに記録されます。

、このクラスによって発行されたすべてのSQLは、テンプレートのインスタンス(通常はJdbcTemplateの完全修飾クラス名に対応するカテゴリの下にDEBUGレベルでログに記録されていますが、カスタムのサブクラスを使用している場合、それは異なる場合がありますJdbcTemplateクラス)。

また、SQLをトレースするtrueprofileSQLを設定して、JDBC URLを変更します。私は、彼らがDEBUGがログインしていた知らなかった

MySQl Connection Reference Documentation

+0

は、それが役に立つかどう答えとしてこれをマークするか、その:) – Jordan

+0

問題ありませんメイトをありがとうございました。乾杯。 –

関連する問題