📜  Java 无需DSN访问连接数据库(1)

📅  最后修改于: 2023-12-03 15:01:34.017000             🧑  作者: Mango

Java 无需 DSN 访问连接数据库

在 Java 中连接数据库时,由于不同的数据库都有不同的驱动程序,我们通常需要在计算机上先配置好数据源名称(DSN),才能用 JDBC 建立连接。但在实际开发中,因为涉及到不同机器、不同环境,这种方式非常不方便。

我们可以使用不需要 DSN 的方式来连接数据库,让您的开发更加方便和简单。

步骤
1. 下载并安装 JDBC 驱动

首先,我们需要下载 JDBC 驱动程序。不同数据库的 JDBC 驱动程序略有不同。例如,如果您要连接 MySQL 数据库,则可以下载 MySQL 的 JDBC 驱动程序。

下载链接:MySQL JDBC 驱动程序

下载完成后,将其解压,并将其中的 mysql-connector-java-5.1.48-bin.jar 文件复制到您的项目中。

2. 引入 JDBC 驱动

将下载完成的 JDBC 驱动程序引入您的项目中。如果您使用的是 Maven 以及其他自动构建工具,只需在 pom.xml 文件中声明以下依赖即可:

<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>5.1.48</version>
</dependency>

如果您使用的是其他构建工具或是手动编译,只需在编译命令中设置 CLASSPATH 路径,以确保 JDBC 驱动程序生效即可。

3. 连接数据库

在 Java 中,我们可以使用 DriverManager 类来连接数据库。在不需要 DSN 的情况下,我们只需提供以下信息:

  • url:数据库的地址信息,包括协议、主机、端口、数据库名称等。
  • user:用户名。
  • password:密码。

例如,以下是连接 MySQL 数据库的代码示例:

import java.sql.*;

public class JDBCDemo {
  public static void main(String[] args) {
    try {
      // 将 JDBC 驱动程序引入项目
      Class.forName("com.mysql.jdbc.Driver");

      // 建立连接
      String url = "jdbc:mysql://localhost:3306/mydatabase";
      String user = "root";
      String password = "root";
      Connection conn = DriverManager.getConnection(url, user, password);

      // 执行 SQL 查询
      String sql = "SELECT * FROM mytable";
      Statement stmt = conn.createStatement();
      ResultSet rs = stmt.executeQuery(sql);
      while (rs.next()) {
        // 处理结果集
      }

      // 关闭连接
      rs.close();
      stmt.close();
      conn.close();
    } catch(Exception e) {
      e.printStackTrace();
    }
  }
}
结论

通过上述简单的步骤,我们成功地实现了在 Java 中连接数据库,同时不需要配置 DSN 的需求。这种方式可以让我们更加方便、快速地开发数据库应用程序,提高开发效率。