Вчера я столкнулся с большой проблемой.В моем текущем проекте я использую ojdbc6 реализацию Oracle JDBC для соединения, но также мне нужно будет обрабатывать, например, базы данных Oracle 8, что совершенно невозможно с этим JAR.Вы могли бы сказать, что я должен использовать ojdbc14, например, что было верно для некоторых тестов, но давайте предположим, что позже мне потребуется обработать 2 вида баз данных от одного и того же поставщика, но мы знаем, что для не существует существующей реализации.ОБА и мне нужно, чтобы эти одновременно были загружены.Тот же интерфейс (и, конечно, не просто тот же интерфейс, та же структура классов, просто другая реализация внутри!), Тот же префикс соединения URL -> Соединение JDBC будет использовать один драйвер, но я не могу загрузить несколько из них.И что теперь?
Моей первой идеей было загрузить JAR-файлы разными загрузчиками классов, может быть, я мог бы загрузить одну и ту же структуру пакета с одинаковыми классами, отделенными друг от друга?Я так не думаю, может быть, это была моя глупая идея.Это может также стать общей проблемой позже, не только с драйверами JDBC, поэтому, даже если вы не можете ответить на мой вопрос, но знаете, чего здесь не хватает, скажите мне
Даже если бы я мог сделатьотдельная загрузка реализаций классов с одинаковыми именами классов, как я могу сообщить DriverManager при создании соединения для использования драйвера EXACT вместо того, чтобы найти драйвер на основе префикса URL-адреса соединения?(где я имею в виду, например, jdbc: oracle: thin).
Теперь я чувствую себя совершенно тупым, потому что я думаю, что это не совсем необычная идея, с которой можно справиться в мире Java, НО я совершенно не знаю, как справиться.
Заранее спасибо