我有一个jdbc客户端通过联系RMI服务器与postgresql数据库通信。在这个rmi服务器中,我有一个简单的ConnectionManager代码:
public class ConnectionManager {
private ConnectionManager(){};
private static boolean driverLoad = false;
private static final String pgDriver="org.postgresql.Driver";
private static final String pgUrl = dbc:postgresql://localhost:5434/franchising_db";
private static final String user = "postgres";
private static final String pass = "password";
public static Connection getConnection() throws ClassNotFoundException, SQLException {
if(!driverLoad) {
Class.forName(pgDriver);
driverLoad = true;
}
return DriverManager.getConnection(pgUrl, user, pass);
}
}
现在postgresql有30个当代连接的限制,但是这种ConnectionManager并没有避免这个用例。我想创建一个定义数量的连接(例如5),当客户端调用getConnection方法时,如果连接可用,则返回它,然后如果所有连接都忙,则客户端等待第一次空闲连接。 我应该如何修改代码呢?