Таким образом, код не должен иметь класс драйвера в classpath во время компиляции. Вы не хотите иметь бесчисленное множество различных драйверов JDBC прошлого, настоящего и будущего в classpath времени компиляции, чтобы сделать ваш код JDBC совместимым со всеми этими базами данных. Вы не хотите перекомпилировать код при каждом обновлении / замене драйвера или БД. Все, что вам нужно, это имя класса драйвера в String
, которое может быть настроено извне (обычно это свойства или файл XML).
Другими словами: портативность и возможность повторного использования.
Если это для вашего личного использования, делайте что хотите. Но если вы сделали это в библиотеке, которая должна распространяться публично (например, ORM или какой-либо инструмент управления базами данных), она не станет популярной, потому что конечный пользователь должен захватывать исходный код и изменять / перекомпилировать его каждый раз, когда он не сделал этого. не поддерживает свою базу данных.