Integer.intValue_计数函数count怎么用

Integer.intValue_计数函数count怎么用Java代码 //intcount=((Integer)query.uniqueResult()).intValue();  //改成    intcount=((Number)query.uniqueResult()).intValue();    Java代码  publicintfindCountByYear(Stringcu

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Java代码  

//int count = ((Integer)query.uniqueResult()).intValue();   

//改成   

  

int count = ((Number)query.uniqueResult()).intValue();  

 

 

Java代码  

 

public int findCountByYear(String currYear) {  

    String hqlString = “select count(*) from WaterPlan as p where p.planYear ='”+currYear+”‘”;  

    Query query = this.getSession().createQuery(hqlString);  

          

    return ((Number)query.uniqueResult()).uniqueResult();  

}  

 从Hibernate 3.0.x/3.1.x升级到最新的3.2版之后,3.2版的很多sql函数如count(), sum()的唯一返回值已经从Integer变为Long,如果不升级代码,会得到一个ClassCastException。 

这个变化主要是为了兼容JPA,可以在hibernate.org的最新文档中找到说明。 

Hibernate Team也提供了一个与原来兼容的解决方案:

Java代码  

Configuration classicCfg = new Configuration();   

classicCfg.addSqlFunction( “count”, new ClassicCountFunction());   

classicCfg.addSqlFunction( “avg”, new ClassicAvgFunction());   

classicCfg.addSqlFunction( “sum”, new ClassicSumFunction());   

SessionFactory classicSf = classicCfg.buildSessionFactory();   

 

或 

Java代码  

//int count = ((Integer)query.uniqueResult()).intValue();   

//改成   

  

int count = ((Number)query.uniqueResult()).intValue();   

  

//这样就可以两个版本同时兼容.   

  

Java代码  

//参考代码  

//第一种方法:  

  String hql = “select count(*) from User as user”;  

  Integer count = (Integer)getHibernateTemplate().find(hql).listIterator().next();  

  return count.intValue();  

  

//第二种方法:  

 String hql = “select count(*) from User as user”;  

  return ((Integer)getHibernateTemplate().iterate(hql).next()).intValue();  

  

//第三种方法:  

 String hql = “select count(*) from User as user”;  

 Query query =  getHibernateTemplate().createQuery( getSession(),hql);  

 return ((Integer)query.uniqueResult()).intValue();  

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/187748.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • FPGA–modelsim仿真工具的破解

    FPGA–modelsim仿真工具的破解1、先把modelsim安装到电脑上;2、将解压的破解文件(MentorKG.exe和patch_dll.bat)复制到modelsim安装目录下的win64文件夹中;3、进入安装目录下的win64文件夹找到mgls.dll、mgls64.dll两个文件,去掉只读属性;4、运行patch_dll.bat(双击该文件即可,有的教程是通过cmd运行的,不过没有直接双击方便快捷),稍等一段时…

    2022年5月23日
    47
  • 简述图像特征提取的常用技术_图像轮廓特征提取

    简述图像特征提取的常用技术_图像轮廓特征提取LBP(LocalBinaryPattern,局部二值模式)是一种用来描述图像局部纹理特征的算子;它具有旋转不变性和灰度不变性等显著的优点。它是首先由T.Ojala,M.Pietik&#228

    2022年8月5日
    7
  • sql2005数据库置疑的解决方法_sql数据库置疑修复工具

    sql2005数据库置疑的解决方法_sql数据库置疑修复工具数据库被置疑后的解决方法(一)A.我们使用默认方式建立一个供恢复使用的数据库(如test)。可以在SQLServerEnterpriseManager 里面建立。B.停掉数据库服务器。C.将刚才生成的数据库的日志文件test_log.ldf删除,用要恢复的数据库mdf文件覆盖刚才生成的数据 库数据文件test_data.mdf。D.启动数据库服务器。此时会看

    2022年8月22日
    7
  • lambda表达式用法_使用lambda表达式定义函数

    lambda表达式用法_使用lambda表达式定义函数(一)输入参数在Lambda表达式中,输入参数是Lambda运算符的左边部分。它包含参数的数量可以为0、1或者多个。只有当输入参数为1时,Lambda表达式左边的一对小括弧才可以省略。输入参数的数量大于或者等于2时,Lambda表达式左边的一对小括弧中的多个参数质检使用逗号(,)分割。示例1下面创建一个Lambda表达式,它的输入参数的数量为0.该表达式将显示“ThisisaLambdae…

    2022年9月19日
    2
  • nginx负载均衡的5种策略及原理

    nginx负载均衡的5种策略及原理nginx的upstream目前支持的5种方式的分配1、轮询(默认)每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 upstreambackserver{ server192.168.0.14; server192.168.0.15; } 2、指定权重指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。 upst…

    2022年6月29日
    52
  • [Unity3D]Unity3D游戏开发之ACT游戏三连击效果实现综述

    [Unity3D]Unity3D游戏开发之ACT游戏三连击效果实现综述

    2021年12月14日
    64

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号