【问题标题】:How to make a MySQL Connection in JAVA如何在 JAVA 中建立 MySQL 连接
【发布时间】:2011-05-09 12:45:37
【问题描述】:

我的 Java 程序似乎无法连接到 java,我已经启动了 MySQL 服务器,在 phpMyAdmin 中创建了一个数据库。但是我对如何使用从 MySQL 下载的 JDBC 驱动程序感到困惑。

这是我的代码:

    private void startConnection()
{
Connection conn = null;
String url = "jdbc:mysql://localhost/";
String dbName = "bank";
String driver = "com.mysql.jdbc.Driver";
String userName = "root";
String password = "password";
try {
  Class.forName(driver).newInstance();
  conn = DriverManager.getConnection(url+dbName,userName,password);
  System.out.println("Connected to the database");
  conn.close();
  System.out.println("Disconnected from database");
} catch (Exception e) {
    System.out.println("NO CONNECTION =(");
}
}

我已将 jar 文件包含在我的 JDK - jre\lib\ext 文件夹中,但没有。有什么想法吗?

提前致谢。

【问题讨论】:

  • 这段代码的控制台输出是什么?
  • 你得到的错误是什么?代码对我来说看起来不错。要获得确切的错误,请在 catch 子句中使用 e.printStackTrace();
  • 在您的异常处理程序中,打印出堆栈跟踪或至少e.getMessage()!
  • 我已将堆栈跟踪放入粘贴箱:pastebin.com/gUGy2u1z
  • @Sandeep Bansal:你是否在构建路径中包含了 com.mysql.jdbc.Driver

标签: java mysql netbeans jdbc


【解决方案1】:

有一点很突出:您没有在 URL 中指定网络端口。默认端口是 3306。所以试试:

jdbc:mysql://localhost:3306/

对于网址。

【讨论】:

  • 用端口号试过了,还是不行。我已经在上面的评论中发布了堆栈跟踪。
  • 两件事:首先,检查 MySQL 驱动程序的 jar 文件是否在类路径或 jre\lib\ext 文件夹中。其次,查看 jar 文件(例如,使用 'jar tf')并检查其中是否有 'com/mysql/jdbc/Driver.class'。
  • 另外,如果您的 Java 应用程序在您将 MySQL 驱动程序 jar 添加到类路径后尚未重新启动,则需要重新启动它。
  • 虽然这不是完整的答案,因为它只是在 IDE 中添加 jar 文件的情况。你的答案更接近,所以你明白了。
  • 谢谢桑迪普。很高兴我能帮上忙。
【解决方案2】:

您必须指定端口。默认为String url = "jdbc:mysql://localhost:3306/";

【讨论】:

    【解决方案3】:
    private void startConnection()
    {
        Connection conn = null;
        String url = "jdbc:mysql://localhost:3306/";
        String dbName = "bank";
        String driver = "com.mysql.jdbc.Driver";
        String userName = "root";
        String password = "password";
    
        try
        {
            Class.forName(driver).newInstance();
            conn = DriverManager.getConnection(url+dbName,userName,password);
            System.out.println("Connected to the database");
            conn.close();
            System.out.println("Disconnected from database");
    
        }
        catch (Exception e)
        {
            System.out.println("NO CONNECTION =(");
        }
    }
    

    这会起作用

    【讨论】:

      猜你喜欢
      • 2019-09-15
      • 2016-02-08
      • 1970-01-01
      • 1970-01-01
      • 2012-06-02
      • 1970-01-01
      • 2020-10-20
      • 2015-10-22
      • 1970-01-01
      相关资源
      最近更新 更多