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

WBOY
リリース: 2016-06-07 17:56:00
オリジナル
921 人が閲覧しました

ADF是oracle提供的一套企业开发的解决方案,本文将实现在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:729
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!