JDBCTemplate查询:query()和queryForObject()区别

1. query()查询结果,将结果封装为JavaBean对象
query的参数:RowMapper。一般使用BeanPropertyRowMapper实现类,可以完成数据到JavaBean的自动封装
使用方法:new BeanPropertyRowMapper<自定义封装类型A>(A.class)

@Test
public void test_a(){
    String sql = "select * from emp";   //不建议使用*,应示明提取的列名,这里示范需要,查询员工表的所有信息
    List<Emp> list = template.query(sql,new BeanPropertyRowMapper<Emp>(Emp.class));    //查询并封装为JavaBean对象
    for(Emp emp:list){
        System.out.println(emp);    //打印
    }
}



2. queryForObject()常用于聚合函数的统计,查询结果,将结果封装为对象
 

@Test
public void test_a(){
    String sql = "select count(id) from emp)";   //通过primary_key————id,查询emp中员工的数量
    Long total = template.queryForObject(sql,Long.class);  //此处将查询结果封装为Long类型
    System.out.println(total);    //打印
}

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值