集成p6spy到spring中
网上好多帖子都是说,修改原有 JDBC Driver为:com.p6spy.engine.spy.P6SpyDriver然后修改spy.properties 中的 realdriver值为原有的JDBC Driver
如果在spring开发环境中使用org.springframework.jdbc.datasource.DriverManagerDataSource来模拟dataSource是不会生效的,
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"><propertyname="driverClassName"><value>com.sybase.jdbc2.jdbc.SybDriver</value></property><propertyname="url"><value>jdbc:sybase:Tds:192.168.0.2:6100/db</value></property><propertyname="username"><value>usr</value></property><propertyname="password"><value>pwd</value></property></bean>
因为在spring加载时我们无法控制先加载哪个,spring会报错不能使用com.p6spy.engine.spy.P6SpyDriver连接到数据库,
其实p6spy只是想做jdbc的代理,而不是真正想连数据库,而spring却不知道这些,所以应该采用另外一种方式来集成p6spy
<bean id="dataSourceTarget" class="org.springframework.jdbc.datasource.DriverManagerDataSource"><propertyname="driverClassName"><value>com.sybase.jdbc2.jdbc.SybDriver</value></property><propertyname="url"><value>jdbc:sybase:Tds:192.168.0.2:6100/db</value></property><propertyname="username"><value>usr</value></property><propertyname="password"><value>pwd</value></property></bean><bean id="dataSource" class="com.p6spy.engine.spy.P6DataSource" destroy-method="close"> <constructor-arg> <ref local="dataSourceTarget"/> </constructor-arg> </bean>
这样就可以把p6spy集成到spring中去了。
令:网上好多文章都介绍使用sqlprofiler和p6spy配合,但是IronTrackSQL感觉更好一些!
关于如何使用sqlprofiler,IronTrackSQL,配置很简单
对于sqlprofiler只要把sqlprofiler自带的spy.properties放到classpath下就可以了,然后java -jar sqlprofiler.jar
对于IronTrackSQL,还要把irontracksql.jar也放到classpath下,然后java -jar irontracksql.jar
页:
[1]