我正在尝试建立与 MySQL 数据库的连接以读取和写入数据。 但是,在尝试运行此代码时出现错误:
public void openConnection() throws SQLException {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/jared_bookoo", "root", "pass");
Statement stmt = conn.createStatement();
}
奇怪的是,当我运行 JUnit 测试时,所有测试都通过了。我能够正确地从数据库中读取并返回正确的数据。但是,当我将其连接到 JSP 并尝试从本地托管的网页读取它时,我收到以下错误:
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost/jared_bookoo
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at jared.simpledatabase.DBInterface.openConnection(DBInterface.java:42)
...
发生了什么事,我该如何解决?驱动程序已安装(并且可以工作;我可以在测试中从数据库中读取),因此我看不出可能出现什么问题。
最佳答案
将 MySQL 驱动程序 jar 放入 WEB-INF/lib 库中。可以找到here 。另外,请确保生成 war 文件时,MySQL 驱动程序 jar 位于 web_app_name/WEB-INF/lib
中。
另一个建议(以防万一,因为您没有指定调用该方法的位置):您应该永远尝试直接在 JSP 中使用 Java 代码。欲了解更多信息,请参阅How to avoid Java code in JSP files? .
还有一个建议,在现实世界的 Web 应用程序中,您可以使用 Data Source获取连接
。由于您没有指定使用哪个应用程序服务器,我将举一个关于 configuring the Data Source in Tomcat 7 的示例。 .
关于java - 通过JSP连接MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15643446/