📜  使用 JDBC 连接检索表内容的Java程序(1)

📅  最后修改于: 2023-12-03 14:49:41.830000             🧑  作者: Mango

使用 JDBC 连接检索表内容的 Java 程序

简介

JDBC(Java 数据库连接)是 Java 语言中用来规范数据库操作的 API,允许 Java 应用程序与各种关系型数据库进行交互。这里主要介绍如何使用 JDBC 连接检索表内容的 Java 程序。

JDBC 连接数据库

首先需要创建 JDBC 连接对象,一般需要以下步骤:

  1. 加载 JDBC 驱动。
  2. 创建连接。
  3. 创建 Statement 对象,用于执行 SQL 语句。
import java.sql.*;

public class ConnectDatabase {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/database_name";
        String user = "root";
        String password = "password";

        try {
            // 加载 JDBC 驱动
            Class.forName("com.mysql.cj.jdbc.Driver");

            // 创建连接
            Connection conn = DriverManager.getConnection(url, user, password);

            // 创建 Statement 对象
            Statement stmt = conn.createStatement();

            // 执行 SQL 语句
            ResultSet rs = stmt.executeQuery("SELECT * FROM table_name");

            // 输出结果集
            while (rs.next()) {
                System.out.println(rs.getInt("id") + " " + rs.getString("name"));
            }

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

以上代码演示如何连接 MySQL 数据库,并检索表内容并输出。

JDBC 操作查询结果

对于 SELECT 查询语句,可以通过 ResultSet 对象进行结果集的操作,可以使用以下方法:

  • next() : 将指针移到结果集的下一行。
  • getInt(), getString() 等:获取当前行的某列的值。
  • close() :释放资源。
import java.sql.*;

public class QueryResult {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/database_name";
        String user = "root";
        String password = "password";

        try {
            // 加载 JDBC 驱动
            Class.forName("com.mysql.cj.jdbc.Driver");

            // 创建连接
            Connection conn = DriverManager.getConnection(url, user, password);

            // 创建 Statement 对象
            Statement stmt = conn.createStatement();

            // 执行 SQL 语句
            ResultSet rs = stmt.executeQuery("SELECT * FROM table_name");

            // 输出结果集
            while (rs.next()) {
                int id = rs.getInt("id");
                String name = rs.getString("name");
                float price = rs.getFloat("price");

                System.out.printf("ID: %d, Name: %s, Price: %.2f\n", id, name, price);
            }

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

以上代码演示结果集的基本操作。

JDBC 执行其他 SQL 语句

除了 SELECT 查询语句之外,还可以执行 INSERT、UPDATE 或 DELETE 等修改语句,使用 executeUpdate() 方法进行操作。具体用法与上面的查询语句类似,这里不再赘述。

总结

JDBC 提供了 Java 应用程序与关系型数据库进行交互的标准接口,可以使用 JDBC 连接数据库,执行 SQL 语句,并操作结果集。在实际开发中,需要注意连接对象的释放,以及 SQL 注入等安全问题。