我面临同样的问题。我正在使用从pom.xml文件
获取的以下数据库URLjdbc:mysql://localhost/myDB?autoReconnect=true&createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8
和驱动程序类是:com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource
当我在tomcat中部署应用程序的war并点击url时,它会出错:
java.sql.SQLException:No suitable driver found for jdbc:mysql://localhost/myDB?autoReconnect=true&createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8
但如果我在eclipse中启动tomcat并点击url,我就不会遇到这样的错误。它按预期工作。
如何解决此问题?
答案 0 :(得分:2)
将以下依赖项添加到您的pom:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.26</version>
</dependency>
和jar到TOMCAT_HOME/lib
文件夹。
答案 1 :(得分:2)
当您从Eclipse运行应用程序时,您正在一个特殊的测试tomcat容器中运行它,而eclipse正在为您设置所有内容。
当您在Eclipse外部的Tomcat中运行应用程序时,您必须自己设置所有必需的库。这包括确保JDBC驱动程序可用。您需要将JDBC驱动程序jar文件放入TOMCAT_HOME/lib
文件夹中,以便正确选取它们。
查看tomcat documentation,特别是 MySQL DBCP示例部分。