问题描述:
在页面里要连接数据库进行查询,将取得的结果显示在页面上,在每次查询后都用close关闭了连接的。平时的显示正常,在数据库中可以监视得到,创建了一个连接后,查询完了后很快就释放了,但是在一次查询还没完时,如果在浏览器上很快的按F5刷新页面,数据库的连接会不停的增加,而原来的连接释放很慢,很快就把数据库拖死了。
采用连接池也只能限制总的连接数,如果一个人很快的不停的刷新,数据库不会死了,但很快一个人就把资源用完了,应用被拖死,
解决办法:
不要把连结建在BEAN中,应该写在一个类的静态方法中,然后作为参数传过去,使每个调用的人都使用同一静态连结.
在连结的BEAN中首先看那个静态的连结是否是null,如果不是,就直接引用,如果是就重新建立这个连结.
……