使用PreparedStatement完成带条件的查询并使用列表存放展示代码
时间: 2024-01-13 22:03:05 浏览: 76
JDBC(用PrepareStatement实现)
3星 · 编辑精心推荐
好的,下面是使用PreparedStatement完成带条件的查询并使用列表存放的Java代码示例:
```java
// 假设需要查询学生表中年龄大于等于18岁的学生
int age = 18;
// 使用PreparedStatement预编译SQL语句
String sql = "SELECT * FROM student WHERE age >= ?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, age);
// 执行查询,获取结果集
ResultSet rs = pstmt.executeQuery();
// 定义一个列表存放查询结果
List<Student> students = new ArrayList<>();
// 遍历结果集并将每个学生的信息添加到列表中
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
Student student = new Student(id, name, age);
students.add(student);
}
// 关闭结果集、PreparedStatement和连接
rs.close();
pstmt.close();
conn.close();
// 遍历学生列表并输出每个学生的信息
for (Student student : students) {
System.out.println(student);
}
```
上面的代码中,首先定义查询条件age为18。然后,使用PreparedStatement预编译SQL语句,其中?表示占位符,表示之后会设置实际的查询条件。setQuery方法可以设置实际的查询条件,这里使用setInt方法设置查询条件为age变量的值。
执行查询后,使用ResultSet获取查询结果集。定义一个列表students存放查询结果,遍历结果集并将每个学生的信息添加到列表中,最后关闭结果集、PreparedStatement和连接。
遍历学生列表并输出每个学生的信息。这里假设Student类有对应的构造方法和toString方法。使用列表存放查询结果可以方便地进行后续的操作,比如统计学生人数、计算平均年龄等。
阅读全文