Автоматическая загрузка драйвера JDBC 4.0 (и выше) работает только в том случае, если jar драйвера находится на начальном (системном) пути класса приложения.Если вы используете Tomcat, драйвер должен находиться в папке <catalina-home>/lib
.
Если вы развертываете драйвер вместе с вашим приложением, то драйвер находится в приложении контекста этого конкретного приложения, и оннужно будет явно загружать, используя Class.forName
.
Но на практике вам не следует использовать DriverManager.getConnection
для создания соединений в веб-приложении.Вы должны использовать источник данных (предпочтительно с пулом соединений), созданный и инициализированный в коде, или в контексте или конфигурации сервера Tomcat.В этом случае эта проблема даже не возникнет, потому что либо источник данных уже знает, как получить драйвер, либо вам необходимо явно настроить его для использования драйвером в любом случае.