Hibernate框架提供了HQL查询和Criteria 查询。下面对这两种查询分别做个例子。也好对这两种查询方法有个大概的了解。就用房屋信息表做例子,查询所有房屋信息。

HQL语句查询所有房屋信息:

  1. /*
  2. * 查询所有房屋
  3. *
  4. * (non-Javadoc)
  5. * @see Dao.HouseDao#selecthouse()
  6. */
  7. public List<House> selecthouse() {
  8. // TODO Auto-generated method stub
  9. //获取连接
  10. Session session = HibernateUtil.getSession();
  11. //查询房屋实体类
  12. String hql="from House";
  13. Query q=cr=session.createQuery(hql);
  14.  
  15. List list = cr.list();
  16.  
  17. return list;
  18.  
  19. }

Criteria 语句查询所有房屋信息:

  1. /*
  2. * 查询所有房屋
  3. *
  4. * (non-Javadoc)
  5. * @see Dao.HouseDao#selecthouse()
  6. */
  7. public List<House> selecthouse() {
  8. // TODO Auto-generated method stub
  9. Session session = HibernateUtil.getSession();
  10. //创建Criteria对象
  11. Criteria cr=session.createCriteria(House.class);
  12. List list = cr.list();
  13.  
  14. return list;
  15.  
  16. }

通过两者的比较,我们可以看出:

1、HQL语句必须写相应的HQL查询语句,而Criteria 语句直接把实体类对象放入类中,省略了查询语句。

2、HQL查询,必须具备一定的SQL基础。而Criteria查询不需要任何SQL基础。

3、HQL查询比Criteria查询用的范围更广,建议使用HQL查询。但也要对Criteria查询有所了解。

  1. 您可以通过点击 右下角 的按钮 来对文章内容作出评价, 也可以通过左下方的 关注按钮 来关注我的博客的最新动态。
  2.  
  3. 如果文章内容对您有帮助, 不要忘记点击右下角的 推荐按钮 来支持一下哦
  4.  
  5. 如果您对文章内容有任何疑问, 可以通过评论或发邮件的方式联系我: @qq.com
  6.  
  7. 如果需要转载,请注明出处,谢谢!!

Hibernate框架之HQL查询与Criteria 查询的区别的更多相关文章

  1. hibernate框架学习笔记11:Criteria查询详解

    创建实体类对象: package domain; import java.util.HashSet; import java.util.Set; //客户实体 public class Custome ...

  2. Hibernate的四种查询方式(主键查询,HQL查询,Criteria查询,本地sql查询)和修改和添加

    Hibernate的添加,修改,查询(三种查询方式)的方法: 案例演示: 1:第一步,导包,老生常谈了都是,省略: 2:第二步,创建数据库和数据表,表结构如下所示: 3:第三步创建实体类User.ja ...

  3. Hibernate框架进阶(下篇)之查询

    导读 Hibernate进阶篇分为上中下三篇,本文为最后一篇,主要内容是Hibernate框架的查询,主要包括hql语句查询,criteria查询以及查询策略的选择. 知识框架 Hibernate查询 ...

  4. hibernate框架学习笔记7:HQL查询、Criteria查询简介

    HQL查询:hibernate独有的查询语言 适用于不复杂的多表查询 示例: 实体类: package domain; public class Customer { private Long cus ...

  5. Hibernate 、Hql查询和Criteria查询

    HQL查询: public Object query(String name){ Session s=null; try{ s=HibernateSessionFactory.getSession() ...

  6. Hibernate查询之Criteria查询

    转自:http://www.cnblogs.com/Laupaul/archive/2012/02/15/2353194.html Criteria是一种比hql更面向对象的查询方式.Criteria ...

  7. JPA 使用 Specification 复杂查询和 Criteria 查询

    转自:https://blog.wuwii.com/jpa-specification.html 前言 JPA 给我们提供了基础的 CURD 的功能,并且用起来也是特别的方便,基本都是一行代码完成各种 ...

  8. NHibernate系列文章二十三:NHibernate查询之Criteria查询(附程序下载)

    摘要 上一篇文章介绍了NHibernate HQL,他的缺点是不能够在编译时发现问题.如果数据库表结构有改动引起了实体关系映射的类有改动,要同时修改这些HQL字符串.这篇文章介绍NHibernate面 ...

  9. 用Hibernate框架把hql生成可执行的sql语句-Oracle方言

    引言:为什么这样的需求,源自公司项目需要,公司的项目使用java的struts2+spring2.5+oracle中间件tuxedo,数据库用的是Oracle,但由于不直接连接数据库,用中间件处理的方 ...

随机推荐

  1. Codeforces Round #306 (Div. 2) A B C

    题目链接:http://codeforces.com/contest/550 A 暴力一发. 代码: #include <iostream> #include <stdio.h> ...

  2. openstack-wsgi的route中添加api流程具体解释(os-networks)添加

    感谢朋友支持本博客.欢迎共同探讨交流,因为能力和时间有限,错误之处在所难免.欢迎指正! 如有转载,请保留源作者博客信息. Better Me的博客:blog.csdn.net/tantexian 如需 ...

  3. 2016/2/18 html 图片热点,网页划区,拼接,表单

    ①图片热点 规划出图片上的一个区域,可以做出超链接,直接点击图片区域就可以完成跳转的效果. 显示 ②网页划区 在一个网页里,规划出一个区域用来展示另一个网页的内容. ③网页拼接 在一个网络页面内,规划 ...

  4. 【HNOI模拟By YMD】move

    Description 设P(n)为从(0,0)移动到点(n,0)的不同路径数目,移动的方式有以下三种:(x,y)->(x+1,y-1),(x,y)->(x+1,y),(x+y)-> ...

  5. libjpeg交叉编译

    下载libjpeg http://libjpeg.sourceforge.net/ 解压tar -zxf jpegsrc.v6b.tar.gz cd jpeg-6b cp /usr/bin/libto ...

  6. Error处理: android.media.MediaRecorder.start(Native Method) 报错:start failed: -19【转】

    本文转载自:http://blog.csdn.net/netwalk/article/details/17686993 Error处理: android.media.MediaRecorder.sta ...

  7. java多线程面试题(来自转载)

    在典型的Java面试中, 面试官会从线程的基本概念问起, 如:为什么你需要使用线程, 如何创建线程,用什么方式创建线程比较好(比如:继承thread类还是调用Runnable接口),然后逐渐问到并发问 ...

  8. CentOS下VI命令整理

    Vi共分三种模式,分别是“一般模式”.“编辑模式”与“命令行命令模式”. l         一般模式:vi处理文件时,一进入该文件就是一般模式.在这个模式中,可以使用“上下左右”键来移动光标,可以使 ...

  9. openstack cluster 封装

  10. POJ 1659 Frogs' Neighborhood (贪心)

    题意:中文题. 析:贪心策略,先让邻居多的选,选的时候也尽量选邻居多的. 代码如下: #pragma comment(linker, "/STACK:1024000000,102400000 ...