Tomcat在通过Maven导入后找不到JDBC驱动程序



我是JSP的新手,所以我对它有点了解。我在Intellij中创建了一个Maven项目,并在pom.xml中导入了所需的依赖项,即mysql-connectorservlet-api:

<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.20</version>
<scope>compile</scope>
</dependency>
</dependencies>

我有一个JSP文件,它使用相应的驱动程序访问本地MySQL数据库。

<%
String url = "jdbc:mysql://localhost:80/DemoJSP";
String username = "root";
String password = "";
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection(url, username, password);
%>

但是,当我运行Tomcat服务器时,我会得到HTTP Status 500。原因是行Class.forName("..."),所以抛出的异常是java.lang.ClassNotFoundException: com.mysql.jdbc.Driver。我已经尝试了数千次Maven重新导入,但都无济于事。我缺少什么吗?

p。S.:类似的问题,如如何使用Maven创建JSP+Servlet+TOMCAT+MySQL,或者我必须将TOMCAT';s连接池?不要解决我的问题。

尝试使用localhost端口3306的url,而不是80。

如果你在时区出现错误,请使用以下字符串:


String url = "jdbc:mysql://127.0.0.1:3306/DemoJSP";
String timezone = "?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC";
String username = "root";
String password = "";
Connection connection = DriverManager.getConnection(url + timezone, username, password);

最新更新