вы можете посмотреть мой пул соединений, если это возможный способ его реализации?Реализация пула подключений Java
public class ConnectionPool {
private static List<DBConnection> pool = null;
private static int available = 0;
private ConnectionPool() {}
public static DBConnection getConnection() {
if (pool == null) {
pool = new ArrayList<DBConnection>();
for (int i = 0; i < 3; i++) {
try {
pool.add(new DBConnection());
available++;
} catch (SQLException e) {
e.printStackTrace();
}
}
}
if (pool.size() > 0) {
available--;
return pool.remove(available);
} else {
return null;
}
}
public static void returnConnection(DBConnection c) {
pool.add(c);
available++;
}
}
Я использую только один массив, а клиент должен задать пул соединений для подключения использовать его, а затем вернуть его в пул соединений.
Connection connection = ConnectionPool.getConnection();
connection.execute("insert into users values('"+user.getUsername()+"', '"+user.getPassword()+"', '"+user.getGroup()+"', '"+banned+"', '"+broker+admin+sharehodler+company+"')");
ConnectionPool.returnConnection(connection);
connection = null;
Пожалуйста, мне нужна обратная связь об этой реализации. Спасибо
Почему вы хотите изобрести колесо. Существует множество проверенных и проверенных реализаций пула соединений. – Seshagiri
Зачем вы это делаете? [javax.sql.DataSource] (http://docs.oracle.com/javase/6/docs/api/javax/sql/DataSource.html) уже выполняет объединение пулов, если поставщик выполнил его, что они делают, и в Apache Commons есть хороший. – EJP
Цель состоит в том, чтобы узнать и понять шаблон проектирования пула подключения –