今天学习增删改查单表中的查询操作
同样先建立数据库连接。
编写 SELECT 语句的 PreparedStatement 对象,这里查询所有字段(*),如果需要特定字段,可以修改查询语句,比如 SELECT name, age FROM students。
通过 executeQuery 方法执行查询,得到 ResultSet 结果集对象,使用 while (resultSet.next()) 循环遍历结果集,在循环内通过 getInt、getString 等方法按照列名(也可以按列索引,从 1 开始)获取对应列的值并输出,这样就可以展示查询到的每条记录信息。
最后依次关闭 ResultSet、PreparedStatement 和 Connection 资源。
我写了 students 表中查询所有学生记录中的查询操作
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;

public class QueryDataExample {
public static void main(String[] args) {
Properties properties = new Properties();
try {
properties.load(QueryDataExample.class.getClassLoader().getResourceAsStream("db.properties"));
String url = properties.getProperty("db.url");
String username = properties.getProperty("db.username");
String password = properties.getProperty("db.password");

        // 1. 建立数据库连接
        Connection connection = DriverManager.getConnection(url, username, password);

        // 2. 编写 SQL 查询语句
        String sql = "SELECT * FROM students";
        PreparedStatement preparedStatement = connection.prepareStatement(sql);

        // 3. 执行查询操作,获取结果集
        ResultSet resultSet = preparedStatement.executeQuery();
        while (resultSet.next()) {
            int id = resultSet.getInt("id");
            String name = resultSet.getString("name");
            int age = resultSet.getInt("age");
            String gender = resultSet.getString("gender");
            System.out.println("ID: " + id + ", Name: " + name + ", Age: " + age + ", Gender: " + gender);
        }

        // 4. 关闭资源
        resultSet.close();
        preparedStatement.close();
        connection.close();
    } catch (SQLException | java.io.IOException e) {
        e.printStackTrace();
    }
}

}

 posted on 2025-02-18 10:54  敝屣  阅读(10)  评论(0)    收藏  举报