通过JSP连接MySQL

时间:2013-03-26 17:18:07

标签: java mysql

我正在尝试建立与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)
    ...

发生了什么,我该如何解决?驱动程序已安装(并且正常工作;我可以在测试中从数据库中读取),因此我看不出可能出现的问题。

1 个答案:

答案 0 :(得分:2)

将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?

在现实世界的网络应用程序中,您还可以使用Data Source来获取Connection。由于您未指定使用的应用程序服务器,因此我将举例说明configuring the Data Source in Tomcat 7