DriverManager управляет всеми JDBC-драйверами в приложении. Представляет набор статических методов. Лениво загружает
системным класслоадером доступные
предсконфигурированные драйверы:
Менеджер занимается созданием экземпляра
Connection – ключевого класса при работе с базой данных. Альтернативный менеджеру (и даже рекомендуемый) способ соединения с источником данных –
ConnectionBuilder. Билдер получают из
javax.sql.DataSource – формально это часть Java EE, так что здесь не будем подробно на нем останавливаться.
Driver – главный класс реализации JDBC-драйвера. Когда загружается класслоадером,
сам регистрирует себя в
DriverManager. Так что кроме предсконфигурированных драйверов, дополнительные можно загрузить просто вызвав
Class.forName.
Можно явно создавать
Connection через драйвер, минуя менеджера и билдер. Драйвер предоставляет информацию о возможных/требуемых для своей работы свойствах в виде массива
DriverPropertyInfo.
DriverAction – дополнительный интерфейс, который должен реализовывать
Driver, если хочет получать уведомления о
разрегистрации DriverManager-ом.