各位大大好 有CONNECTION POOL的问题想请教大家
我现在建立了两个CONNECTION POOL 的 DataSource 一个是连ORACLE 一个是连SQL
SERVER
org.apache.tomcat.jdbc.pool.DataSource datasource1 = new
org.apache.tomcat.jdbc.pool.DataSource();//ORACLE
org.apache.tomcat.jdbc.pool.DataSource datasource2 = new
org.apache.tomcat.jdbc.pool.DataSource();//SQL SERVER
程式码约如下
public class XXXXXXXXServlet extends HttpServlet {
Connection conn1 = null;
Connection conn2 = null;
try{
conn1=datasource1.getConnection();
读取ORACLE的资料做事情
} catch (Exception e) {
} finally{
conn1.close();做完关闭
}
//最后连接SQL SERVER 关闭数据库
try{
conn2=datasource2.getConnection();
将每次连线ORACLE的资料作纪录 存在SQLERVER
} catch (Exception e) {
} finally{
conn2.close();做完关闭
}
}
但现在遇到一个问题,有时候datasource1达到最大使用量了,因此后面的进来Servlet的
连线无法读取到数据库
但是最后datasource2又会将每次连线做纪录,但因为datasource1的POOL满了读取不到资
料,造成datasource2纪录的值为空值,
请问该怎么解决?
让datasource1排队的连线排到之后datasource2再去做纪录
不要datasource2直接做纪录 造成有空值的状况发生