1、下载p6spy包
p6spy: http://heanet.dl.sourceforge.net/sourceforge/p6spy/p6spy-install.zip
a.解压p6spy-install.zip,把p6spy.jar拷贝到lib目录下和spy.properties放到src目录下
b.修改原有的JDBC Driver为:com.p6spy.engine.spy.P6SpyDriver
c.修改spy.properties中的realdriver为实际的driver,如这里我的修改为realdriver=com.ibm.db2.jcc.DB2Driver
其他属性设置如:
设置时间:dateformat=yyyy-MM-dd HH:mm:ss
屏蔽输出:excludecategories=info,debug,result,batch
d.编译后重启服务器,即可以看到完整的sql输出
2、下载sqlprofiler 包
http://heanet.dl.sourceforge.net/sourceforge/sqlprofiler/sqlprofiler-0.3-bin.zip
a、将SQL Profiler自带的spy.properties拷贝至src目录下覆盖原来的spy.properties
b、将sqlprofiler.jar拷贝值lib目录下,这里日志输出需要log4j.jar包
c、修改spy.properties中的realdriver为实际的driver
这里spy.properties的片断如下:
log4j.appender.SQLPROFILER_CLIENT=org.apache.log4j.net.SocketAppender
log4j.appender.SQLPROFILER_CLIENT.RemoteHost=localhost
log4j.appender.SQLPROFILER_CLIENT.Port=4445
log4j.appender.SQLPROFILER_CLIENT.LocationInfo=true
p6spy 通过SocketAppender 向sqlprofiler发送日志信息,sqlprofiler启动后就开始监听本机的4445端口,在应用中执行数据库操作后就可以在sqlprofiler的界面中看到sql语句的执行结果。
3、监控sql输出
a、执行命令java -Xmx256m -jar sqlprofiler.jar启动sqlprofiler
b、启动服务器,会看到sqlprofier控制台显示connectted to p6spy