练习使用PreparedStatement完成带条件的查询并展示。
时间: 2024-03-02 19:48:14 浏览: 55
好的,以下是使用PreparedStatement完成带条件的查询的示例代码:
```java
String sql = "SELECT * FROM users WHERE age > ? AND gender = ?";
PreparedStatement statement = connection.prepareStatement(sql);
statement.setInt(1, 18); // 设置第一个参数,年龄大于18岁
statement.setString(2, "male"); // 设置第二个参数,性别为男性
ResultSet resultSet = statement.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);
}
```
在上面的示例代码中,我们使用了带有占位符的SQL查询语句,占位符用问号(?)表示。然后使用PreparedStatement对象的setXXX方法设置占位符的值,最后执行查询并遍历ResultSet结果集展示查询结果。
需要注意的是,使用PreparedStatement可以防止SQL注入攻击,因为占位符的值会被自动转义。此外,使用PreparedStatement还可以提高查询效率,因为数据库可以将查询语句预编译为可执行的代码,而不是每次查询都需要解析SQL语句。
阅读全文