Iam не в состоянии понять, как получить соединение в других классах (IAM с использованием пула соединений с использованием ГСБДА)Как получить статический объект соединения в случае объединения?
MyServlet // НЕ полным сводом
class MyServlet extends HttpServlet {
public Datasource getDatasource(){
Class.forName(driver).newInstance();
ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(connectUri, username, password);
PoolableConnectionFactory poolableConnectionFactory = new PoolableConnectionFactory(connectionFactory, new GenericObjectPool(null), null, "SELECT null", false, true);
connectionPool = new GenericObjectPool(poolableConnectionFactory);
connectionPool.setMaxActive(10);
connectionPool.setMaxIdle(4);
return new PoolingDataSource(connectionPool);
}
Теперь у меня есть что-то вроде метода GetConnection внутри MyServlet
public static Connection getConnection() {
}
A) Как я использовать источник данных внутри getConnection() static ethod? Я не хочу, чтобы сделать GetDataSource(), как статический метод, а затем использовать, так как я чувствую, используя статический опасно, когда мы используем Объединив механизм
B) Пожалуйста, покажите мне путь, чтобы получить в конечном счете статический GetConnection(), а также удовлетворяет объединяющие merchanism отлично ..
Невозможно ли получить объект соединения внутри метода getConnection()? – user3128668
Да, это возможно. вот что я упомянул в своем ответе. т.е. метод вызова getConnection() здесь – Keerthivasan
Я не получил вас. Моя основная проблема: я могу получить объект подключения, выполнив datasource.getConnection() внутри статического метода getCOnnection(), но, сделав это, сделал меня make 'datasource' as static. попробуйте понять мою проблему. – user3128668