http://52347.javaeye.com/blog/452849
昨天测试自己做的东西,页面打开相当缓慢,10秒竟然!按F5刷新页面,连接池竟然爆满,释放不了了,一开始还认为是数据库连接的问题,因为我的应用服务器和数据库服务器不在一台机器,一个在北京,一个在郑州。今天仔细看看代码,System.out.println()下开始读取数据库的时间和结束读取时间,原因找到了,我在读取带有image字段的记录时候,用的是select *,这是问题关键所在,每条记录10来M,太大了,我直接select我需要的字段后,再按住F5不放,连接池中的连接再也不涨了。打开页面也很快了!
总结:
(1)读取带有blob、clob、image等大字段的时候,不要用select *,在以后的SQL语句书写的时候能不用*就不用*;
(2)在读取数据库的SQL语句出打印开始和时间,可以观察哪个SQL语句用的时间多,找原因。