在ADF中跟踪SQL执行时间实现代码

前端之家收集整理的这篇文章主要介绍了在ADF中跟踪SQL执行时间实现代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

ADF是oracle提供的一套企业开发的解决方案。
最近做性能测试, 需要获取当前页面有多少sql 查询,花费多少时间。首先想到的就是常用的log4jdbc 结果 ADF 不支持封装的驱动。后尝试在Orace DB 层面上拦截,比较复杂还要设置数据库连接的sesson属性,也要修改以后代码。 ADF 的ViewObjectImp 提供复写sql调用方法,但需要修改已有代码,最后还是修改ADF源码来达到不修改已有代码获取sql执行时间。 先用改好的adfm.jar 覆盖已有的, 配置虚拟机启动参数 -DsqlTruckerToFile=D:\log.txt -DenablesqlTracker=true
重启就可以看到sql 执行时间了 195:SELECT Geos.CREATED_BY,Geos.CREATED_TS,Geos.FAX_NUMBER,Geos.FROM_EMAIL_ADDRESS,Geos.ID,Geos.MODIFIED_BY,Geos.MODIFIED_TS,Geos.NAME,Geos.PHONE_NUMBER,Geos.REPLY_TO_EMAIL_ADDRESS,Geos.IS_DEFAULT FROM GEOS Geos ORDER BY Geos.IS_DEFAULT,Geos.NAME
195:<ElapsedTime(ms):>729

猜你在找的Oracle相关文章