查询返回对象
1、JdbcTemplate 实现查询返回对象
queryForObject(String sql, RowMapper<T> rowMapper, Object… args)
第一个参数:sql 语句
第二个参数:RowMapper,是接口,返回不同类型数据,使用这个接口里面实现类完成数据封装
第三个参数:sql 语句值
我们使用这个方法完成对数据库的查询。
(1)在 dao 接口中创建查询方法
// BookDao.java
Book findBookInfo(String id);
(2)在 dao 的实现类中实现该方法。
// BookDaoImpl.java
@Override
public Book findBookInfo(String id) {
String sql = "select * from user_db.t_book where book_id=?";
return jdbcTemplate.queryForObject(sql, new BeanPropertyRowMapper<Book>(Book.class), id);
}
(3)通过 service 调用该方法
// BookService.java
public Book findOne(String id) {
return bookDao.findBookInfo(id);
}
(4)使用
@Test
public void testJdbcTemplate4() {
ApplicationContext context = new ClassPathXmlApplicationContext("bean1.xml");
BookService bookService = context.getBean("bookService", BookService.class);
Book book = bookService.findOne("1");
System.out.println(book);
}
为了方便查看,我们可以重写一下 Book 类的 toString 方法。
控制台打印结果如下:
Book{bookId='1', bookname='Java', bstatus='lost'}
成功完成查询单个对象。
查询返回集合
1、调用 JdbcTemplate 中的方法实现查询返回集合
quer