hibernate使用hql和sql查询总记录数和注意事项

使用sql进行查询

        String sql = "select count(*) from student";
        Query query = session.createSQLQuery(sql);
        List<BigInteger> list = query.list();
        int count = list.get(0).intValue();

使用hql进行查询

        String hql = "select count(*)  from Student ";
        Query query = session.createQuery(hql);
        int count = ((Long) query.iterate().next()).intValue();


上面两段代码已经经过测试

注意事项:

1.版本

我发现网上的同学都是把long类型替换成Integer类型,我在测试的时候始终通不过。我怀疑和eclipse版本有关,但是不确定,特此贴出我用的版本。

我使用的eclipse版本是

Eclipse Java EE IDE for Web Developers.


Version: Helios Service Release 2

Build id: 20110218-0911

2.出错提示

如果同学们在版本不一样的时候,一定注意看出错提示,我也是根据出错提示进行修改才最终通过的,比如在使用sql进行查询,会提示java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Integer,这时候你改成BigInteger 就能通过了,这就解决注意事项中1.版本的问题。
   



  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值