- 浏览: 604063 次
- 性别:
- 来自: 北京
最新评论
-
黑色幽默_cool:
这种不负责任的文章,多看一分钟都是浪费。
为什么使用ibatis而不用spring jdbcTemplate -
leibinhui:
不错啊 非常实用
JS正则表达式详解[收藏] -
suu:
写个存储过程,爆如下错误,是不是游标里的数据太多引起的?无法执 ...
使用Spring jdbc template调用Sybase带有返回结果集的储存过程-要点 -
travellers:
有SVR6了,为什么很多还在使用SVR4呢?
什么是SVR4?我们为什么要选择SVR4? -
dotjar:
生活是多么美好阿!
老公日记
网上好多帖子都是说,修改原有 JDBC Driver为:com.p6spy.engine.spy.P6SpyDriver
然后修改spy.properties 中的 realdriver值为原有的JDBC Driver
如果在spring开发环境中使用org.springframework.jdbc.datasource.DriverManagerDataSource来模拟dataSource是不会生效的,
因为在spring加载时我们无法控制先加载哪个,spring会报错不能使用com.p6spy.engine.spy.P6SpyDriver连接到数据库,
其实p6spy只是想做jdbc的代理,而不是真正想连数据库,而spring却不知道这些,所以应该采用另外一种方式来集成p6spy
这样就可以把p6spy集成到spring中去了。
令:网上好多文章都介绍使用sqlprofiler和p6spy配合,但是IronTrackSQL感觉更好一些!
关于如何使用sqlprofiler,IronTrackSQL,配置很简单
对于sqlprofiler只要把sqlprofiler自带的spy.properties放到classpath下就可以了,然后java -jar sqlprofiler.jar
对于IronTrackSQL,还要把irontracksql.jar也放到classpath下,然后java -jar irontracksql.jar
P6Spy & SQL Profiler & IronTrack SQL的配置也可以参阅
http://www.iteye.com/topic/28880
然后修改spy.properties 中的 realdriver值为原有的JDBC Driver
如果在spring开发环境中使用org.springframework.jdbc.datasource.DriverManagerDataSource来模拟dataSource是不会生效的,
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName"> <value>com.sybase.jdbc2.jdbc.SybDriver</value> </property> <property name="url"> <value>jdbc:sybase:Tds:192.168.0.2:6100/db</value> </property> <property name="username"> <value>usr</value> </property> <property name="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"> <property name="driverClassName"> <value>com.sybase.jdbc2.jdbc.SybDriver</value> </property> <property name="url"> <value>jdbc:sybase:Tds:192.168.0.2:6100/db</value> </property> <property name="username"> <value>usr</value> </property> <property name="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
评论
9 楼
hertz
2007-07-15
我按照上面的方法做的,没有成功,提示——1 constructor arguments specified but no matching constructor found in bean 'dataSource',好像P6DataSource没有一个参数的构造函数阿
8 楼
spiritfrog
2007-06-01
我用sqlprofiler的时候,想过滤掉category为resultset的信息,然后在spy.properties里面看到
excludecategories=info,debug,result,batch
应该是说category为resultset的信息已经被设置成exclude了,但是我现在还是能看到,为什么呢?因为我觉得这个信息似乎没有用。
excludecategories=info,debug,result,batch
应该是说category为resultset的信息已经被设置成exclude了,但是我现在还是能看到,为什么呢?因为我觉得这个信息似乎没有用。
7 楼
alexsunny
2007-05-31
可以监控sql效率呀和hibernate显示的sql不同
6 楼
dingyuan
2007-05-30
不知道这个东西有什么用。。本身hibernate就可以配置一下输入sql语句
5 楼
mingisme
2007-05-30
我的配置:
结果:
<!-- P6Spy--> <bean id="dataSource" class="com.p6spy.engine.spy.P6DataSource"> <constructor-arg> <bean class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.p6spy.engine.spy.P6SpyDriver" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> </bean> </constructor-arg> </bean>
realdriver=oracle.jdbc.driver.OracleDriver logfile = c:/spy.log appender=com.p6spy.engine.logging.appender.Log4jLogger
结果:
p6spy - 1180506863484|0|1|statement|/* load collection com.staplesnrc.plugins.security.domain.Resource.permissions */ select permission0_.RESC_ID as RESC2_0_, permission0_.PERMIS_ID as PERMIS1_0_ from TPERMIS_RESC permission0_ where permission0_.RESC_ID in (?, ?, ?, ?, ?)|/* load collection com.staplesnrc.plugins.security.domain.Resource.permissions */ select permission0_.RESC_ID as RESC2_0_, permission0_.PERMIS_ID as PERMIS1_0_ from TPERMIS_RESC permission0_ where permission0_.RESC_ID in (7, 142, 169, 161, 168) p6spy - 1180506863484|-1||resultset|/* load collection com.staplesnrc.plugins.security.domain.Resource.permissions */ select permission0_.RESC_ID as RESC2_0_, permission0_.PERMIS_ID as PERMIS1_0_ from TPERMIS_RESC permission0_ where permission0_.RESC_ID in (7, 142, 169, 161, 168)|PERMIS1_0_ = 7, RESC2_0_ = 7 p6spy - 1180506863484|-1||resultset|/* load collection com.staplesnrc.plugins.security.domain.Resource.permissions */ select permission0_.RESC_ID as RESC2_0_, permission0_.PERMIS_ID as PERMIS1_0_ from TPERMIS_RESC permission0_ where permission0_.RESC_ID in (7, 142, 169, 161, 168)|PERMIS1_0_ = 48, RESC2_0_ = 161 p6spy - 1180506863484|-1||resultset|/* load collection com.staplesnrc.plugins.security.domain.Resource.permissions */ select permission0_.RESC_ID as RESC2_0_, permission0_.PERMIS_ID as PERMIS1_0_ from TPERMIS_RESC permission0_ where permission0_.RESC_ID in (7, 142, 169, 161, 168)|PERMIS1_0_ = 51, RESC2_0_ = 168 p6spy - 1180506863484|-1||resultset|/* load collection com.staplesnrc.plugins.security.domain.Resource.permissions */ select permission0_.RESC_ID as RESC2_0_, permission0_.PERMIS_ID as PERMIS1_0_ from TPERMIS_RESC permission0_ where permission0_.RESC_ID in (7, 142, 169, 161, 168)|PERMIS1_0_ = 51, RESC2_0_ = 169
4 楼
dzmonkey
2006-11-13
我也没有试成功,请指教:
部分spy.properties
spring的配置:
部分spy.properties
realdriver=oracle.jdbc.driver.OracleDriver appender=com.p6spy.engine.logging.appender.FileLogger logfile = E:\spy.log # append to the p6spy log file. if this is set to false the # log file is truncated every time. (file logger only) append=true #The following are for log4j logging only log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout log4j.appender.STDOUT.layout.ConversionPattern=p6spy - %m%n log4j.logger.p6spy=DEBUG,STDOUT realdatasourceproperties=port;1521,serverName;192.168.0.23,databaseName;CSDRES,user;pass
spring的配置:
<bean id="dataSourceTarget" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName"><value>oracle.jdbc.OracleDriver</value></property> <property name="url"> <value> jdbc:oracle:thin:@192.168.0.23:1521:CSDRES </value> </property> <property name="username"><value>user</value></property> <property name="password"><value>pass</value></property> </bean> <bean id="dataSource" class="com.p6spy.engine.spy.P6DataSource" destroy-method="close"> <constructor-arg> <ref local="dataSourceTarget"/> </constructor-arg> </bean>
3 楼
YuLimin
2006-10-20
Ivan Li 写道
检查一下你的spy.property里logfile的配置路径是否正确,还有appender是否正确
P6Spy也可以配置成DataSource形式进行监控的。
P6Spy & SQL Profiler & IronTrack SQL的配置也可以参阅
http://www.iteye.com/topic/28880
2 楼
IvanLi
2006-10-20
检查一下你的spy.property里logfile的配置路径是否正确,还有appender是否正确
1 楼
okokok
2006-10-20
按你的方法做了,没看到log文件产生
发表评论
-
use hibernate3-maven to export sql based on entity
2011-08-07 18:19 1395<plugin> <group ... -
uninstall mysql completely in my Mac X 10.6
2011-08-07 12:19 1191sudo rm /usr/local/mysql ... -
my vimrc
2011-05-14 11:02 1713copy from http://www.vi-improve ... -
使用HSQLDB来作EJB3 EntityBean到Unit Test要点
2010-01-20 17:17 2109add <property name=" ... -
user xrandr to change my desktop's resolution
2009-12-16 17:04 1680xrandr --newmode "1280x ... -
XSS的关键之列表
2009-10-11 17:20 1831//this field are used tp esc ... -
python查看方法帮助(from dive into python)
2009-09-30 11:31 2618def info(object, spanding=10, c ... -
selenium 测试ajax的关键
2009-01-20 18:26 42271: waitForCondition(contidtion, ... -
RichFaces 手记
2008-10-07 15:46 0安装,除了richfaces 下载包中的jar( " ... -
代码检查工具
2008-09-25 11:48 2558findBugs, PMD, CheckStyle find ... -
CI工具hudson
2008-09-24 17:04 3112CI工具除了hudson,还有很多,例如CruiseContr ... -
创建solaris package step by step
2008-09-24 11:27 1920原文地址:http://www.ibiblio.org/pub ... -
什么是SVR4?我们为什么要选择SVR4?
2008-09-23 14:13 4955http://www.lslnet.com/linux/f/d ... -
IPS 中的pkg command学习笔记
2008-09-22 17:18 1843pkg(1): 使用pkg(1)来创建一个镜像,安装,升级,管 ... -
On Board前的学习计划
2008-09-18 09:37 15161:在virtual box 上虚拟一个OpenSolaris ... -
YUI Grid CSS的优雅设计
2008-09-02 22:38 2813最近加入了一个GAE的项目cpedialog,该项目的前端布局 ... -
我很懒,但是懒人有懒办法
2008-08-18 17:06 1798今天要使用jackrabbit做个小东西,上apache一看, ... -
当XPath遇上NameSpace
2008-07-23 19:39 6562在jdk5.0中,已经包含了对Xpath的支持,可一通过下面的 ... -
ubuntu下安装ipmsg-飞鸽传书
2008-07-21 09:32 28791 先下载 源码 下载的是gnome2版本的源码 http ... -
sudo 执行时无密码(不安全)
2008-07-17 17:18 2211sudo visudo root ALL=(ALL) ...
相关推荐
2. 把p6spy的jar包放到Classpath中,如果是WEB App放在WEB APP/WEB-INF/lib目录下 3. 把p6spy的Driver Class name替换原来的JDBC Driver Class Name, url, username, password一切都不变。 -- 由于每个应用的...
例如,教程可能会介绍如何在Spring Boot项目中集成P6Spy,以及如何解析生成的日志来优化SQL查询。 **四、最佳实践** 1. **合理设置日志级别**:根据需求调整日志级别,避免信息过多导致性能下降。 2. **定期分析...
用于分布式跟踪的库(如果在classpath中找到)可启用jdbc连接和查询跟踪(仅适用于p6spy或datasource-proxy) 为什么不将DataSource包装在配置中? 除了使用库之外,您还可以手动包装DataSource ,但是该库还提供了...
在Spring Boot应用中,通过在数据源配置中插入P6Spy的代理驱动,我们可以获取到详细的SQL语句执行信息,包括执行时间、结果集大小等,这对于性能优化和问题排查非常有帮助。 现在,让我们来看一下文件列表中的`...
综上所述,在Spring Boot项目中集成Hibernate、Druid和p6spy可以帮助开发者更加高效地进行数据库操作,同时也能够更好地监控和调试应用程序。通过对这些技术的学习和掌握,可以大大提升开发效率和应用质量。
在这个主题中,我们将深入探讨Spring Boot如何与MySQL数据库进行集成,以及如何进行CRUD(创建、读取、更新和删除)操作。 首先,集成MySQL数据库需要在`pom.xml`或`build.gradle`文件中添加相关依赖。对于Maven...
值得注意的是,部分依赖如Druid数据库连接池和P6Spy SQL查询日志记录器的版本注释为“升级失败,下次再升”,表明这些依赖可能在尝试升级过程中遇到了问题,未来计划再次尝试升级。 此配置还包含了一些未升级的依赖...
同时,为了使P6spy能够监听到SQL语句,我们需要在JDBC连接字符串中加入P6spy的驱动,并配置相应的日志输出设置。对于MongoDB,我们需要配置连接URL、数据库名、认证信息等,确保Java应用能够成功连接到MongoDB服务器...
在学习MyBatis 3.3.1时,还需要了解如何集成Spring,如何设计DAO接口,以及如何在实际项目中进行异常处理和日志记录。同时,熟练掌握MyBatis的映射和动态SQL特性,能显著提升开发效率,减少出错概率。通过阅读官方...
Paoding-Rose提供了丰富的API和工具,可以方便地集成到Spring Boot的生态中。例如,通过P6Spy监控数据库访问性能,或者使用Paoding-Rose的动态数据源切换功能,以应对复杂多变的业务场景。 总结来说,Spring Boot...
通过以上步骤,我们成功地在 Spring Boot 应用程序中集成了 Druid 数据库连接池,并实现了基本的监控功能。这不仅提高了应用程序的性能,也方便了数据库连接的管理和监控。接下来,可以根据实际需求进一步完善监控...
Maven框架项目该项目不再更新维护,请移步该项目基于maven3.0构建的,项目中融合了Struts1 , Struts2 , Spring , SpringMVC , ...项目中的持久化框架sql语句的跟踪分别采用log4jdbc结合log4j和p6spy ,在控