查询结果为单行记录和集合应用JdbcTemplate分别如何实现?
时间: 2024-02-15 21:05:57 浏览: 24
使用JdbcTemplate查询单行记录可以通过调用JdbcTemplate的queryForObject方法来实现。该方法会将查询结果映射为指定的Java对象,如果查询结果为空,则返回null。具体实现如下:
```java
String sql = "SELECT * FROM users WHERE id = ?";
Object[] args = new Object[]{userId};
User user = jdbcTemplate.queryForObject(sql, args, new BeanPropertyRowMapper<>(User.class));
```
其中,sql为查询语句,args为查询参数,User.class为映射的Java对象类型,queryForObject方法会自动将查询结果映射为User对象。
使用JdbcTemplate查询集合可以通过调用JdbcTemplate的query方法来实现。该方法会将查询结果映射为List集合,每行记录映射为一个Java对象。具体实现如下:
```java
String sql = "SELECT * FROM users WHERE age > ?";
Object[] args = new Object[]{18};
List<User> userList = jdbcTemplate.query(sql, args, new BeanPropertyRowMapper<>(User.class));
```
其中,sql为查询语句,args为查询参数,User.class为映射的Java对象类型,query方法会自动将查询结果映射为List<User>集合。