文章出處
文章列表
由于ORM工具的緣故,我們調試程序的時候遠沒有直接在程序里直接寫個string的SQL簡單,想當年查個sql是有多么的幸福,一行sql = "select * from ..."找找就行了, 現在用了hibernate, 就算在JPA中開了show_sql=true, 打出來的還是一串 "name = ? and id = ? "
好在找到一個工具, p6spy, 作為真正JDBC的一個代理, 截獲了所有sql, 讓我們看到一個真實sql的機會。 先下載,以下配置默認跟我目前項目一樣
hibernate+proxool+postgresql 改后的部署層次為hibernate+proxool+p6spy+postgresql
p6spy 下載后,將jar包解壓, 步驟很簡單:
- p6spy.jar放到web程序的web-inf/lib下。
- spy.properteis 放入web-inf/classess下
spy.properties上將以下屬性改一下就好了:
realdriver=org.postgresql.Driver //真正的JDBC驅動名 deregisterdrivers=true appender=com.p6spy.engine.logging.appender.StdoutLogger //輸出到控制臺
然后改proxool連接池的配置, 用p6spy代替真正的JDBC驅動, 作為一個中間代理,截獲SQL
proxool.properties
jdbc-0.proxool.driver-class=com.p6spy.engine.spy.P6SpyDriver
配置完成了,打開IDE,欣賞下久違的sql語句吧
文章列表
全站熱搜