• 締切済み

hibernateのログ出力について

現在hibernateにてSQLのログを出力しようと思っているのですが、 show_sqlをtrueに設定してもログに出力される内容はバインドされる前のログしかでてきません。 バンド後のログを出力する方法はあるのでしょうか? それと、hibernateがはくログに実行したユーザ名などを付与したいと思っています。 そういうことも可能なのでしょうか? # hibernateのログにほかの情報を付け加えたいと思っています。 たとえば、現在以下のようにログが出力されています。 Hibernate: select test10_.no as no, test10_.memo as memo, test10_.memo2 as memo2 from test1 test10_ where (test10_.no=? ) これを以下のように修正することなどは可能でしょうか? Hibernate: select test10_.no as no, test10_.memo as memo, test10_.memo2 as memo2 from test1 test10_ where (test10_.no='1' ) 【実行ユーザ:user1】

みんなの回答

回答No.2

私も昔、同じ問題に直面しました。 そのときにソースコードを追いかけてみましたが、たしか出力できなかったと思います。(バージョン2系でしたが) しょうがないのでRDBMS側でクエリログを出すという方法を採った記憶があります。

noname#86752
noname#86752
回答No.1

Hibernateでは、できないと思います。 p6spyを使えばSQLが見れますよ。

rikiponpon
質問者

補足

さっそくのお返事ありがとうございます。 p6spyというもは知りませんでした。 これを使えばバインド後のSQLが見えるのですね。 ただ、p6spyなどは使用できそうにないんです。。 使えるのはstruts、log4j、hibernateです。。 バインドの値は他のログで出力すればいいとして。。。 Hibernateが出力するログに付加情報を付け加えるのもやはり無理ですかね。。

関連するQ&A