使用PreparedStatement完成带条件的查询并展示代码
时间: 2024-01-13 14:03:05 浏览: 33
好的,下面是使用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();
// 遍历结果集并输出每个学生的信息
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
System.out.println("id: " + id + ", name: " + name + ", age: " + age);
}
// 关闭结果集、PreparedStatement和连接
rs.close();
pstmt.close();
conn.close();
```
上面的代码中,首先定义查询条件age为18。然后,使用PreparedStatement预编译SQL语句,其中?表示占位符,表示之后会设置实际的查询条件。setQuery方法可以设置实际的查询条件,这里使用setInt方法设置查询条件为age变量的值。
执行查询后,使用ResultSet获取查询结果集。遍历结果集并输出每个学生的信息。最后,关闭结果集、PreparedStatement和连接。
使用PreparedStatement预编译SQL语句可以提高查询效率,并且可以有效避免SQL注入攻击。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/octet-stream](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)