hibernate中createQuery与createSQLQuery:前者用的hql语句进行查询,后者可以用sql语句查询,前者以hibernate生成的Bean为对象装入list返回,后者则是以对象数组进行存储。

在有时查询部分字段,或实现一些统计查询时很方便。如要统计一个表中各个专业的状态:

public List<Object[]> statisticTitileNum(String instituteNumber, String yearTime) {

int[] ns;

List<Object[]> list = HibernateUtil

.getSession()

.createSQLQuery(

"select count(id),sum(status>1),sum(status=4) "

+",major,instituteNumber from t_liti where instituteNumber=:instituteNumber and yearTime=:yearTime group by major")

.setString("instituteNumber", instituteNumber)

.setString("yearTime", yearTime).list();

return list;

}

如果使用createSQLQuery有时候也想以hibernate生成的Bean为对象装入list返回,就不是很方便,不过createSQLQuery有这样一个方法可以直接转换对象

Query query = session.createSQLQuery(sql).addEntity(XXXXXXX.class);

XXXXXXX 代表以hibernate生成的Bean的对象,也就是数据表映射出的Bean。

呵呵以后多注意,还是时不时的要看看hibernate各个对象方法的使用。

Hibernate学习之createSQLQuery与createQuery的区别及使用相关推荐

  1. createSQLQuery与createQuery的区别

    本文原址 : http://stta04.javaeye.com/blog/377633hibernate 中createQuery与createSQLQuery 昨晚帮同事看代码到凌晨2点多,今早6 ...

  2. Hibernate学习总结【比较与Mybatis框架之间的区别】

    经过一周的Hibernate学习,我理解了作为以JPA为核心的持久层查询标准.JPA所涉及的思想为ORM(object relational mapping),它解释了为什么我们的实体关系要和数据库一 ...

  3. hibernate 学习之——hql 语句

    hibernate 学习之--hql 语句 hibernatre hql 语句:是对于hibernate的orm模式的一种类似于JDBC语句的面对对象的操作语句 特点 : 1.对于类名属性名区分大小写 ...

  4. hibernate学习笔记(总结)

    hibernate学习笔记 课程内容 6 1 HelloWorld 6 2 Hibernate原理模拟-什么是O/R Mapping以及为什么要有O/R Mapping 6 3 常见的0/R框架(了解 ...

  5. 马士兵Hibernate学习笔记

    马士兵hibernate学习笔记 课程内容 6课程内容 1 HelloWorld 6 2 Hibernate原理模拟-什么是O/R Mapping以及为什么要有O/R Mapping 6 3 常见的0 ...

  6. hibernate学习笔记二

    上一篇关于hibernate学习笔记一,主要是作为hibernate的入门知识.没有和spring发生任何关系,这一篇我将把spring集成进去,看spring如何管理hibernate,还有和未使用 ...

  7. hibernate学习和各种关系总结

    2019独角兽企业重金招聘Python工程师标准>>> 原文地址 http://yifanxiang.blog.163.com/blog/static/500008342010527 ...

  8. Hibernate学习之Hibernate注解总结

    Hibernate学习之Hibernate注解总结http://www.bieryun.com/3269.html 一.类级别的注解 @Entity name:表的名字(可选)一般表名和类名相同 必须 ...

  9. C++简介源码讲解精辟版,C++入门级C++学习,C++与C的区别值得知晓

    C++简介源码讲解精辟版,C++入门级C++学习,C++与C的区别值得知晓 C语言和C++基础区别 C++标准输入和输出 命名空 1.命名空间的定义 : namespace 标识符{ } 例:name ...

最新文章

  1. 异常-----Java compiler level does not match解决方法
  2. qt4如何读oracle,Qt4编程的控制MPlayer
  3. SAP MTA打包的一些常见错误
  4. 模式匹配运算符–Shell
  5. 计算机组成原理输入实验报告,计算机组成原理实验报告
  6. 一个RecycleView的强大adapter
  7. python抓取网站图片_利用python抓取网站图片
  8. 限制EditText只能输入小数点后两位
  9. python处理word文档
  10. Bootloader和Linux启动过程总结
  11. 基于java的俄罗斯方块游戏系统设计与实现(项目报告+答辩PPT+源代码+数据库+截图+部署视频)
  12. php输出甲子年,甲子年是哪一年?甲子年生人今年多大?
  13. 详解python 利用 pyecharts 画地图(热力图)(世界地图,省市地图,区县地图)、动态流向图
  14. Timer延时任务和ScheduledThreadPool执行延时任务
  15. ATA学习记录(1)download microcode
  16. 【网络流】【二分图最大匹配】Buaacoding1043 难题·Beihang Couple Pairing Comunity 2017
  17. Unreal Engin_画廊制作笔记 _004灯光处理,添加灯光
  18. 地理探测器的应用方法
  19. kafka常见命令集锦
  20. 计算机的历史——到底谁是第一台计算机?

热门文章

  1. Netty工作笔记0045---异步模型原理剖析
  2. plsql数据库异常---plsql 登录后,提示数据库字符集(AL32UTF8)和客户端字符集(ZHS16GBK)不一致
  3. 读取图像到txt的程序
  4. RHEL7/CentOS7 Network Service开机无法启动的解决方法
  5. 无需密码通过ssh执行rsync来同步文件
  6. Java中对象的比较 == 和 equals()
  7. php spl函数,PHP SPL标准库中的常用函数介绍
  8. 随想录(高质量代码开发)
  9. 嵌入式操作系统内核原理和开发(消息队列)
  10. STC89C52点亮LED