java代码实现完成数据库加载驱动,建立链接,创建会话等步骤。 完成数据库查询,从数据库获取表students 中所有记录并存入到一个Array List,并返回该Array List。 关闭以上所有需要关闭的对象。
时间: 2024-05-03 22:18:44 浏览: 149
JAVA连接数据库进行相应的操作
下面是一个简单的 Java 代码样例,实现了数据库加载驱动,建立连接,创建会话等步骤,以及从数据库获取表 students 中所有记录并存入到一个 Array List,并返回该 Array List,最后关闭所有需要关闭的对象。
```java
import java.sql.*;
import java.util.ArrayList;
public class DatabaseHandler {
private static final String DB_URL = "jdbc:mysql://localhost:3306/mydatabase"; // 数据库 URL
private static final String DB_USER = "root"; // 数据库用户名
private static final String DB_PASSWORD = "password"; // 数据库密码
public ArrayList<Student> getAllStudents() {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
ArrayList<Student> studentList = new ArrayList<>();
try {
// 加载数据库驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 建立数据库连接
conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
// 创建会话
stmt = conn.createStatement();
// 查询表 students 中所有记录
String sql = "SELECT * FROM students";
rs = stmt.executeQuery(sql);
// 将查询结果存入 ArrayList
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
String gender = rs.getString("gender");
studentList.add(new Student(id, name, age, gender));
}
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
} finally {
try {
// 关闭 ResultSet 对象
if (rs != null) {
rs.close();
}
// 关闭 Statement 对象
if (stmt != null) {
stmt.close();
}
// 关闭 Connection 对象
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
// 返回 ArrayList
return studentList;
}
}
```
在这个样例中,我们定义了一个 `DatabaseHandler` 类,其中包含了一个 `getAllStudents()` 方法,该方法实现了从数据库获取表 students 中所有记录并存入到一个 ArrayList 中的功能。
在该方法中,我们首先加载了 MySQL 数据库驱动,然后建立了数据库连接,创建了会话,查询了表 students 中的所有记录,并将查询结果存入到 ArrayList 中。最后,我们在 finally 块中关闭了所有需要关闭的对象,并返回 ArrayList。
需要注意的是,在样例代码中我们使用了一个 `Student` 类来表示从数据库中取出的每一条记录。你需要自己根据你的数据库表结构来定义 `Student` 类。
阅读全文