没有为jdbc找到合适的驱动程序:mysql:// localhost:3306 /

时间:2012-05-21 04:48:49

标签: java-ee tomcat servlets jdbc mysql-connector

我有一个A类连接到我的localhost中的mysql数据库。它在日食中工作正常 然后我修改了项目以从servlet调用/调用类A并部署到tomcat 我得到了这个例外:

No suitable driver found for jdbc:mysql://localhost:3306/a

,此异常发生在:

DriverManager.getConnection(connectionUrl, user, password);

这里出了什么问题?我该如何解决这个问题?

添加:
我确定.jar在WEB-INF / lib下,这不是问题 我只是想出来了,问题是我忘记添加这一行:

Class.forName("com.mysql.jdbc.Driver");

有没有人知道为什么这条线在Web应用程序中是必须的而不是在java项目中?

1 个答案:

答案 0 :(得分:4)

没有合适的驱动程序“通常意味着您提供给连接的JDBC URL具有不正确的语法或者根本没有加载驱动程序。

当调用getConnection方法时,DriverManager将尝试从初始化时加载的驱动程序中找到合适的驱动程序,并使用与当前applet或应用程序相同的类加载器显式加载的驱动程序。(使用Class.forName() })

同时检查您的类路径中是否有mysql-jdbc.jar。我建议将.jar放在项目的/WEB-INF/lib目录的物理位置。然后tomcat会照顾其余的。