在hibernate中使用SQLQuery查询select count()或者使用 select sum(filed_name)
返回的结果会是BigInteger等类型。
而这些是不能够强制转换为Object或者是Integer类型。
真的是很麻烦!
但是BigInteger中有invalue()方法。
可以自己转换为int类型。
所有已会有了下面的代码!
long result = (Integer)this.getHibernateTemplate().execute(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException, SQLException { SQLQuery query = session.createSQLQuery(hql); BigInteger bigVal =(BigInteger)query.list().get(0); int val = bigVal.intValue(); return val; } });