【问题标题】:How to test if JDBC driver is installed correctly and if the DB can be connected?如何测试JDBC驱动是否安装正确以及DB是否可以连接?
【发布时间】:2010-11-18 14:22:56
【问题描述】:

我尝试将它与 Java SDK 一起安装在家里... SDK 运行良好,我现在可以使用命令提示符将 java 程序编译成类...

但是我不确定如何测试 JDBC 是否可以连接到我的服务器/数据库/mysql。

我感觉我的服务器(共享网站/虚拟主机)可能不允许连接...

如何在不连接服务器的情况下测试 JDBC 是否安装正确?

然后我如何测试(请提供单独的代码)(现在已确认工作)JDBC 正在连接到我的数据库?

非常感谢。

【问题讨论】:

    标签: java mysql jdbc


    【解决方案1】:

    如何在不连接服务器的情况下测试 JDBC 是否安装正确?

    只需检查 JDBC 驱动程序上的 Class#forName() 是否不会抛出 ClassNotFoundException

    try {
        Class.forName(driverClassName);
        // Success.
    }
    catch (ClassNotFoundException e) {
        // Fail.
    }
    

    然后我如何测试(请提供单独的代码)(现在已确认工作)JDBC 正在连接到我的数据库?

    只需检查 DriverManager#getConnection()DataSource#getConnection() 是否不会抛出 SQLException

    try (Connection connection = DriverManager.getConnection(url, username, password)) {
        // Success.
    }
    catch (SQLException e) {
        // Fail.
    }
    

    另见

    【讨论】:

    • 根据您删除的“我需要哪个driverClassName?” 评论:只需选择特定数据库所需的那个即可。对于 MySQL,通常是 com.mysql.jdbc.Driver。另请参阅“另请参阅”部分中的供应商特定文档和迷你教程。
    • 该死,失败了。 :( 是时候重新安装了 :P
    • 我建议您阅读迷你教程,以确保您已经涵盖(并理解)所有内容:)
    【解决方案2】:

    首先,下载 MySQL 的 JDBC driver 并将其放在应用程序的类路径中。

    其次,尝试在您的 Java 代码中注册该驱动程序,使用

    Class.forName("com.mysql.jdbc.Driver");
    

    如果这没有引发异常,则说明您已成功注册。

    第三,检查你的连接是否正常:

    Connection conn =  DriverManager.getConnection("jdbc:mysql://localhost:3306/mysql","user", "pass");
    

    根据需要替换您的 URL、用户名和密码。

    【讨论】:

      【解决方案3】:

      在本地安装数据库并连接到该数据库。

      您可以使用 telnet 连接到数据库应该监听的端口来检查与服务器的连接;如果您可以打开连接,您就知道没有网络问题(例如防火墙)。如果 JDBC 没问题,网络也没问题,那么你可以尝试连接到远程系统。如果这不起作用,那是某种配置问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-09-03
        • 1970-01-01
        • 2021-02-02
        • 2021-12-22
        • 2019-05-09
        • 2011-08-17
        相关资源
        最近更新 更多