質問のほとんどすべて。p6spy を hibernate に関連して発見したところです。これは実際の SQL クエリを表示するのに非常に便利ですが、その仕組みについてはかなり困惑しています。
それで、それはどのように機能しますか?
2197 次
1 に答える
2
p6spy の基本的な考え方は次のようになります。
Datasourceコード内で目的を達成するか目的を達成するかに応じて、実際のコードを参照する代わりに、p6spyJDBC driver固有のものを指定します。)。com.p6spy.engine.spy.P6SpyDrivercom.p6spy.engine.spy.P6DataSource- その後、ファイル内の実際のものを構成し
spy.propertiesます(それぞれrealdriverまたはrealdatasourceプロパティを使用) - 構成に応じて、SQL ステートメントのロギングを実現できます (を使用
com.p6spy.engine.logging.P6LogFactory) - あなたの質問に答えるために、アイデアは、すべてのjdbc呼び出し(ステートメントの実行、トランザクション関連のもの)がp6spyによってラップ(プロキシ)され、構成に応じて、ファイルロガー(を使用
appender=com.p6spy.engine.logging.appender.FileLogger)、stdoutロガーを介してログに記録できるということです( を使用appender=com.p6spy.engine.logging.appender.StdoutLogger) または log4j ロガー (: を使用appender=com.p6spy.engine.logging.appender.Log4jLogger)
詳細に興味がある場合は、お気軽にお問い合わせいただくか、https ://github.com/p6spy/p6spy でプロジェクト自体を確認してください。
于 2013-09-08T05:40:30.813 に答える