【问题标题】:JDBC JAVA No suitable driver found for jdbc:mysql://localhost:3306/votingJDBC JAVA 找不到适合 jdbc:mysql://localhost:3306/voting 的驱动程序
【发布时间】:2017-04-08 16:25:34
【问题描述】:

您好,我正在尝试使用 JDBC 连接到 mysql 数据库,我的代码如下。我收到一个错误,因此找不到合适的驱动程序。搜索我发现通常的错误是语法或缺少类路径中的 jar 文件。我尝试了这两种解决方案,但不知道下一步该怎么做,它无法连接。另外,为了管理我安装了 WAMP 和 mySQL 工作台的数据库,不确定它是否相关。

package test.jdbc;
import java.sql.*;


public class jdbctester {

public static void main(String[] args)
{

    try
    {
        Connection myconn=DriverManager.getConnection("jdbc:mysql://localhost:3306/voting","root","Vanquish123");
        Statement myStmt=myconn.createStatement();
        ResultSet myRs=myStmt.executeQuery("select * from electoral");
        /*
        while(myRs.next())
        {
            System.out.println(myRs.getString("state")+","+myRs.getString("perDem"));
        }
        */
    }
    catch(Exception exc)
    {
    exc.printStackTrace();  
    }
}

}

【问题讨论】:

    标签: java jdbc


    【解决方案1】:

    试试这个:

    Class.forName("全限定驱动类名");

    Java Class.forName, JDBC connection loading driver

    这篇文章说你不应该需要它,但尝试它不会伤害你。

    【讨论】:

    • 自 2007 年起不再需要,如果没有它找不到驱动程序,它就不会被它找到。
    • Class.forName("全限定驱动类名");为我工作,但为什么我需要这个我看过的所有例子都没有这个
    • 为什么要投反对票?如果您声明您检查了课程路径,为什么要接受一个告诉您做您已经做过的事情的答案?
    • 那么可以接受答案吗?你说我的建议有效,然后被否决,这似乎很荒谬
    • 我知道了,但你能解释一下为什么需要它吗?
    【解决方案2】:

    您必须将“com.mysql.jdbc_5.1.5.jar”添加到您的项目构建路径中...转到项目属性>构建路径>库>添加外部jar并添加jar文件。

    Connection conn = null;  
        try {
            // Register JDBC driver
            Class.forName(DRIVER).newInstance();
    
            // Open a connection
            conn = DriverManager.getConnection(Local_URL + , USERNAME, PASSWORD);
            System.out.println("Connected Database Successfully...\n\n");
    
        } catch (Exception se) {
            throw new AppException("Failed to create Local Database connection", se);
        }
        return conn;
    

    【讨论】:

    • Class.forName("全限定驱动类名");为我工作,但为什么我需要这个我看过的所有例子都没有这个
    • "com.mysql.jdbc.Driver"
    • 我也看了这个视频,它并没有使用它youtube.com/watch?v=2i4t-SL1VsU 知道为什么没有它就无法工作吗?
    • MySQL Connector/J 5.1.5 非常旧,(2007 年 9 月)。您确实需要使用更新的版本(此时最新版本是 5.1.41)。还调用newInstance() 是针对 MySQL 驱动程序中更老的错误的一种解决方法。
    猜你喜欢
    • 2016-10-01
    • 2012-05-08
    • 2014-07-28
    • 1970-01-01
    • 1970-01-01
    • 2012-05-27
    • 2013-05-09
    • 2012-07-30
    • 2014-06-09
    相关资源
    最近更新 更多