【发布时间】:2014-08-17 08:34:36
【问题描述】:
我正在尝试在 Java 8 中使用 MySQL(在 Windows 7 x64 上使用 Eclipse Luna Release (4.4.0) 和 tomcat 8.0.9)。
我将mysql-connector-java-5.1.31-bin.jar 放入了我的WEB-INF/lib 目录。
将项目编译为普通的 Java 应用程序时,一切正常。但是,当我尝试使用与 servlet 相同的代码时,它会抛出
java.sql.SQLException:找不到合适的驱动程序 jdbc:mysql://localhost:3306/test
将 .jar 文件移动到 TomCat 的 /lib 目录也没有帮助 (虽然编译为普通应用程序仍然有效)。
我并没有真正改变任何东西,只是从 Java、TomCat 和 Eclipse 的旧组合升级而来。
显然,TomCat 没有正确加载库/驱动程序;任何想法为什么会这样?
【问题讨论】:
-
那么您是如何创建连接的?在您的应用程序中手动使用 DriverManager,还是在 Tomcat 中定义数据源?
-
我都试过了。使用 DriverManager 会引发上述异常。我还不能正确定义数据源,我得到的只是“java.sql.SQLException:无法为连接 URL 'null' 创建类 '' 的 JDBC 驱动程序”。
-
确实很奇怪。我问是因为这决定了您将驱动程序放在哪里;如果数据源需要在 tomcat/lib 中,如果手动需要在 WEB-INF/lib 中(尽管 tomcat/lib 应该始终有效)。我认为此时您最好发布您拥有的数据源定义以及用于从中获取连接的代码。
-
我的 xml 文件看起来像 this,然后我在我的代码中使用
context.bind("jdbc/TestDB", datasource);。 -
绑定()?你当然需要lookup()
标签: java mysql eclipse tomcat servlets