- - PR -
Hibernateでの実行SQLの出力について(show_sql指定以外)
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-04-18 11:38
たかと申します。
いつもこちらにはお世話になっております。 現在、Hibernate3.1を使用してWebアプリケーションを構築しています。 トランザクション毎のインフォメーションとして、[ 実行SQL文 ]を ログファイルへ出力したいと考えております。 Hibernateのドキュメントなどには、hibernate.cfg.xmlのshow_sqlプロパティへ trueを設定すると出力できるとか書いてありますが、出力先が標準出力と なっています。 ※org.hibernate.AbstractBatchar#log()で出力を行っているようですが、 System.out.printlnで記述されているため、出力先の指定ができません。 HibernateのAPIを調べては見たのですが、SQL文取得に概要する機能は 見当たらず、悩んでおります。 実行SQL文の取得方法、または代替案などご存知の方が いらっしゃいましたらばご教授頂ければと思います。 宜しくお願いします。 | ||||
|
投稿日時: 2006-04-18 12:58
log4jのプロパティファイルに
ってやると一応出ます。 (余計なものもでますが…) # 当方Hibernate3.0で試しました | ||||
|
投稿日時: 2006-04-18 13:19
Kazukiさん
早速のご返答ありがとうございます。参考になります。 当方の環境でもSQL文は出力することができました。 が、余計なものが少々気になります・・・。 org.hibernate.JDBCException#getSQL() のような出力だと、なお良いなぁと思っています。 | ||||
|
投稿日時: 2006-04-18 14:52
以下ではいかがでしょうか?
log4j.logger.org.hibernate.SQL=debug 必要により、 hibernate.format_sql に 'false' or 'true' を設定すれば、 いい感じに出力されるようです。 | ||||
|
投稿日時: 2006-04-18 15:27
なっかむさん
ありがとうございます。 仰るとおり、いい感じに出力することができました!! log4jの使い方をもう少し勉強します。 Kazukiさん、なっかむさん、とても助かりました。 ありがとうございました。 |
1