如何测量在java中获取数据库所需的时间

时间:2015-01-05 21:19:39

标签: java performance servlets jdbc

我试图找到从我的java servlet中获取数据库的时间。理想情况下,Db提取应返回大约1K行。获取的功能如下。

ps = dbConnection.prepareStatement(select xxxx from xxxx);
rs = ps.executeQuery();
while (rs.next()) 
    {
        rs.getString(1);
    }

我只需要DB调用/获取的时间(即,我不需要从池中获取连接所花费的时间,或者需要花费时间来解析数据等。)

如果我需要找到单独获取的时间,以下是正确的方法 第一种方法:

  ps = dbConnection.prepareStatement(select xxxx from xxxx);
int initialTime=getTime();
rs = ps.executeQuery();
int finalTime=getTime();
while (rs.next()) 
    {
        rs.getString(1);
    }
System.out.println("Time taken="+ finalTime - initialTime);

第二种方法:

 ps = dbConnection.prepareStatement(select xxxx from xxxx);
int initialTime=getTime();
rs = ps.executeQuery();
while (rs.next()) 
    {
        rs.getString(1);
    }
int finalTime=getTime();
System.out.println("Time taken="+ finalTime - initialTime);

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

javamelody是一个库,可以让您测量查询时间,内存使用情况等等。

https://code.google.com/p/javamelody/