eclipse中的MySql(MAMP)jdbc连接错误

Posted

技术标签:

【中文标题】eclipse中的MySql(MAMP)jdbc连接错误【英文标题】:MySql (MAMP) jdbc connection error in eclipse 【发布时间】:2016-01-21 02:45:12 【问题描述】:

我正在尝试在 Eclipse 中建立与 mysql 的连接。我已经尝试了以下 -

    我已将“my-sql-connector.jar”添加到构建路径和类路径中。 我已经尝试将它添加到 WEB-INF 中。 尝试使用 class.forName。

尝试上述所有方法后,我仍然无法建立连接。我不断收到以下错误 -

java.sql.SQLException: 找不到适合 jdbc:mysql://localhost/sampledb 的驱动程序

这是我的代码 -

public class Main 

    private static final String USERNAME = "user1";
    private static final String PASSWORD = "user1";
    private static final String CONN_STRING =
            "jdbc:mysql://localhost/sampledb";

    public static void main(String[] args) throws SQLException 

        Connection conn = null;
        try 
            conn = DriverManager.getConnection(CONN_STRING, USERNAME, PASSWORD);
            System.out.println("Connected");
         catch (SQLException e) 

            System.err.println(e);
         finally  
            if (conn != null) 
                conn.close();
            
        

我已经看过多个关于这个问题的帖子,并且我已经尝试了所有的建议。我是 Java 新手,并试图掌握 Java 和 JDBC,但过去 2 天我一直坚持使用它。有人可以指导我解决这个问题吗?

【问题讨论】:

您使用的 MySQL jar 文件的确切名称是什么? 我使用的Jar文件名是-mysql-connector-java-5.0.8-bin.jar 【参考方案1】:

您是否尝试注册您的驱动程序?并检查您的驱动程序是否正确。

Class.forName("com.mysql.jdbc.Driver");
conn = (Connection) DriverManager.getConnection(CONN_STRING, USERNAME, PASSWORD);

【讨论】:

非常感谢。添加上面提到的这个 Class.forName 后它起作用了。我不确定是什么问题。但如果你能解释一下,我会很高兴。 @user3571736 我只是想知道您使用的是什么 java 版本,因为 Java 6+ 不需要它!也许考虑更新它! Class.forName 加载类。更多信息,请查看此答案:***.com/questions/2092659/… 我知道(我引用的链接末尾有此信息)。我只是说目的。 @Enissay - 我正在使用 java7,这就是我没有添加 Class.forName 的确切原因。但看起来我需要那个。

以上是关于eclipse中的MySql(MAMP)jdbc连接错误的主要内容,如果未能解决你的问题,请参考以下文章

使用Windows上的套接字/路径将MySQL工作台连接到MAMP

Yosemite - MAMP - 无法通过套接字“/Applications/MAMP/tmp/mysql/mysql.sock”连接到本地 MySQL 服务器 (2)

Laravel 5.1 - 连接到 MySQL 数据库 (MAMP)

如何在Mac的MAMP中允许远程连接到mysql数据库

MAMP “无法启动 Apache,因为端口正在使用中。” AND“无法通过 /tmp/mysql.sock 连接到本地 MySQL 服务器

如何使用 DataGrip 连接到 MAMP MySQL 服务器