Мне нужно проверить соединение JDBC с базой данных. Код Java для этого должен быть таким простым:
DriverManager.getConnection("jdbc connection URL", "username", "password");
Диспетчер драйверов найдет соответствующий драйвер для данного URL-адреса подключения. Однако мне нужно иметь возможность загрузить драйвер JDBC (jar) во время выполнения. Т.е. у меня нет драйвера JDBC на пути к классам Java-приложения, которое выполняет фрагмент кода выше.
Таким образом, я могу загрузить драйвер, используя этот код, например:
URLClassLoader classLoader = new URLClassLoader(new URL[]{"jar URL"}, this.getClass().getClassLoader());
Driver driver = (Driver) Class.forName("jdbc driver class name", true, classLoader).newInstance();
Но тогда диспетчер драйверов все равно не поднимет его, поскольку я не могу сказать, какой загрузчик классов использовать. Я попытался установить контекстный загрузчик классов текущего потока, и он все еще не работает.
Кто-нибудь знает, как лучше всего этого добиться?