请教一个jsp查询速度慢的问题。

我是刚用jsp,由于用的表里面的数据很多,先用一个17万多条记录的做试验,结果花了近2分钟,然后又用了个4500条记录的做试验,花了10秒。
采用的是jsp+bean的方式,其中的Driver使用的是:”oracle.jdbc.driver.OracleDriver“
连接串是:"jdbc:oracle:thin:@192.168.0.1:1521:yiy"
然后,我用asp做相同的事情,发现两者差距甚大,asp查询17万多条记录花了50秒左右,4500条记录花了仅3秒。请问各位高人,有什么办法可以缩小这种差距?不胜感谢!

你用asp查询的是同一个数据库吗?JSP的查询速度和你用的App Server,以及JVM的设置参数,和JDBC驱动的参数都有关系。Oracle的JDBC驱动默认的Fetch Size只有10条记录,对你应用来说太小了,你把Fetch Size设的越大,查询速度就越快,你把Fetch Size设为100,速度至少可以加快1倍以上。


Statement stmt = conn.createStatement();
stmt.setFetchSize(100);
stmt.executeQuery(...);

or

PreparedStatement pstmt = conn.prepareStatement(...);
pstmt.setFetchSize(100);
pstmt.executeQuery();

谢谢你的解答,我是用的同一个数据库.我明天试试看,请问你有QQ或者msn这类的东西吗?方便的话,请给我留个,我想这样请教问题更方便点.3ks

有没有显示数据库的内容?
java的 I/O 能力实在是不敢恭维!