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

 更新时间:2012年11月27日 09:55:29   作者:  
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:<SQL:>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多表级联更新详解

    Oracle多表级联更新详解

    我们在平时的工作中可能遇到过,多表级联更新,我也在网上看到过不少的方法,但是使用这些方法一般都没成功过,所以今天我给大家介绍一种稍微麻烦的方法,有需要的朋友可以参考下
    2013-07-07
  • 基于ORA-19815闪回空间爆满问题的处理方法

    基于ORA-19815闪回空间爆满问题的处理方法

    下面小编就为大家分享一篇基于ORA-19815闪回空间爆满问题的处理方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • ORACLE 自动提交问题

    ORACLE 自动提交问题

    通过PL/SQL DEVELOPER向数据库中的某个表中插入一定量的数据,通过select 语句可以看到已经插入到表中,然而诡异的是通过程序却无法查询到新插入的数据。
    2009-06-06
  • Oracle9i 动态SGA,PGA特性探索

    Oracle9i 动态SGA,PGA特性探索

    虽然Oracle9i中的内存管理仍然需要很多的手工操作,不过大部分的Oracle管理员可以使用工具来连续地监控Oracle SGA中的内存使用,并且可以根据Oracle instance中现在的使用情况来自动地重新分配内存。
    2009-03-03
  • oracle求同比,环比函数(LAG与LEAD)的详解

    oracle求同比,环比函数(LAG与LEAD)的详解

    本篇文章是对oracle求同比,环比函数(LAG与LEAD)进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • Oracle表空间的创建、使用、重命名与删除方法

    Oracle表空间的创建、使用、重命名与删除方法

    表空间是Oracle数据库中的一个重要概念,它是一组物理文件,用于存储数据库对象,如表、索引等,在使用Oracle数据库时,通常需要创建表空间来存放数据,本文介绍了Oracle表空间的创建、使用、重命名与删除方法
    2024-03-03
  • oracle行转列方法集合汇总(推荐!)

    oracle行转列方法集合汇总(推荐!)

    工作中我们经常会碰到行转列的情况,下面这篇文章主要给大家介绍了关于oracle行转列方法集合的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-04-04
  • Oracle数据泵(Data Dump)使用过程当中经常会遇到一些奇奇怪怪的错误案例

    Oracle数据泵(Data Dump)使用过程当中经常会遇到一些奇奇怪怪的错误案例

    从oracledatabase 10g开始引入了data pump(数据泵)工具,它提供了一种基于服务器的数据导出导入使用程序。 所有的data pump都作为一个服务器进程,数据不再必须由一个客户程序处理。Data Pump工具的导出和导入实现Oracle数据库之间数据的传输。
    2014-09-09
  • PL/SQL Developer15和Oracle Instant Client安装配置详细图文教程

    PL/SQL Developer15和Oracle Instant Client安装配置详细图文教程

    PL/SQL Developer是一种集成的开发环境,专门用于开发、测试、调试和优化Oracle PL/SQL存储程序单元,比如触发器等,这篇文章主要给大家介绍了关于PL/SQL Developer15和Oracle Instant Client安装配置的详细图文教程,需要的朋友可以参考下
    2024-04-04
  • oracle中all、any函数用法与区别说明

    oracle中all、any函数用法与区别说明

    在Oracle中,any()表示括号内任何一个条件,只要有一个满足即可;而all()表示所有的条件都满足才可以
    2023-04-04

最新评论