QBC查询:

  1.   Query By Criteria
  2.  
  3.   使用面向对象的方式查询
  4.  
  5.   HQL单表查询相似,但不包含别名查询和具名查询

   1 全表查询

  1.   Criteria ce = session.createCriteria(Customer.class);
  2.   List<Customer> list = ce.list();
  3.   
      for(Customer customer : list) {
  4.     System.out.println(customer);
  5.   

  2 条件查询

  1.   Criteria ce = session.createCriteria(Order.class);
  2.   ce.add(Restrictions.eq("orderno", "111"));
  3. List<Order> list = ce.list();
  4.  
  5.   Criteria ce = session.createCriteria(Order.class);
      ce.add(Restrictions.and(
        Restrictions.like("orderno", "%111%"),
        Restrictions.like("productName", "%手机%")
      ));
       
      List<Order> list = ce.list();

 3 分页查询

  1. Criteria ce = session.createCriteria(Order.class);
  2.  
    //分页
  3.   ce.setFirstResult(0);
  4.   ce.setMaxResults(5);
  5.   
      List<Order> list = ce.list();

  4 查询排序

  1.   Criteria ce = session.createCriteria(Order.class);
  2.  
  3.   ce.addOrder(org.hibernate.criterion.Order.desc("id"));
  4.  
  5.   List<Order> list = ce.list();

  5 聚合查询

  1.   Criteria ce = session.createCriteria(Order.class);
  2.  
  3.   /*ce.setProjection(Projections.rowCount());
  4.   Long count = (Long)ce.uniqueResult();*/
  5.  
  6.   ce.setProjection(Projections.max("id"));
  7.   Integer count = (Integer)ce.uniqueResult();
  8.  
  9.   System.out.println(count);

  6 投影查询

  1.   Criteria ce = session.createCriteria(Order.class);
  2.     
      ProjectionList pList = Projections.projectionList();
  3.   pList.add(Property.forName("orderno"));
  4.   pList.add(Property.forName("productName"));
  5.   ce.setProjection(pList);
  6.   List<Object[]> list = ce.list();
  7.  
  8.   for(Object[] order : list) {
  9.      for(Object column : order) {
  10.         System.out.print(column);
  11.         System.out.print(" ");
  12.      }
  13.     System.out.println();
  14.   }

Hibernate QBC的更多相关文章

  1. Hibernate QBC 简单收集

    Hibernate QBC 介绍: QBC(Query By Criteria)通过 API 来检索对象 主要由 Criteria 接口.Criterion 接口和 Exception 类组成,支持在 ...

  2. Hibernate QBC运算符

    HQL运算符 QBC运算符 含义 = Restrictions.eq() 等于equal <> Restrictions.ne() 不等于not   equal > Restrict ...

  3. Hibernate QBC 条件查询(Criteria Queries) and Demos

    目录 创建一个Criteria 实例 限制结果集内容 结果集排序 关联 动态关联抓取 查询示例 投影Projections聚合aggregation和分组grouping 离线detached查询和子 ...

  4. hibernate QBC查询

    HQL运算符 QBC运算符 含义 = Restrictions.eq() 等于equal <>  Restrictions.ne() 不等于not equal >  Restrict ...

  5. 【Hibernate QBC】

    HibernateQBC public class HibernateQBC { //演示离线查询 @Test public void testSelect6() { SessionFactory s ...

  6. Spring Data Jpa 初探

    Spring Data 项目的目的是为了简化构建基于 Spring 框架应用的数据访问计数,包括非关系数据库.Map-Reduce 框架.云数据服务等等;另外也包含对关系数据库的访问支持. 下载网址: ...

  7. jeecg使用心得

    接触到jeecg框架是在去年,接触到了jeecg开源框架,此框架为企业级急速开发框架,不了解的可以百度下这类框架的,对于目前状态来说,此框架确实也满足了所需,此刻就开始接触jeecg框架,去年六七月份 ...

  8. JEECG开发第一个菜单显示设备列表

    一.新建设备表(t_base_device) ; -- ---------------------------- -- Table structure for t_base_device -- --- ...

  9. Hibernate 查询方式(HQL/QBC/QBE)汇总

    作为老牌的 ORM 框架,Hibernate 在推动数据库持久化层所做出的贡献有目共睹. 它所提供的数据查询方式也越来越丰富,从 SQL 到自创的 HQL,再到面向对象的标准化查询. 虽然查询方式有点 ...

随机推荐

  1. 网络-console

    console接口h3c er8300cisco asaQuidway S5700-28C-SI Routing Switchtopsec <H3C>? reboot Reboot dev ...

  2. super and this

    super 指向父类的一个指针, 引用父类中的属性,方法或者构造函数 public class Father { String name ; Father(String myName){ name = ...

  3. spring boot 学习资料

    spring boot 学习资料: 学习资料 网址 Spring Boot Cookbook-极客学院 http://wiki.jikexueyuan.com/project/spring-boot- ...

  4. Nunjucks:Mozilla 开发的 JavaScript 模板引擎

    Nunjucks 中文网站:https://nunjucks.bootcss.com/

  5. Hbase 简介+环境安装配置教程

    HBase介绍 HBase是参考google的bigtable的一个开源产品,建立在hdfs之上的一个提供高可靠性.高性能.列存储.可伸缩.实时读写的数据库系统.是一种介于nosql和RDBMs之间的 ...

  6. Piwik学习 -- 插件开发

    这个版本的piwik比较旧,此文档仅作参考 最近为了给自己的web系统添加一个运营数据分析和展示的功能,本打算自己纯手工打造,但是发现成本太高,时间和精力方面不允许.在网上查阅了一些资料,发现目前有许 ...

  7. System Generator 使用离散资源

    System Generator 使用离散资源 重要,怎样配置FPGA中的DSP Macro 最后是编译模型

  8. VGA图像显示组成模块分析

    VGA图像显示组成模块分析 1.片上内存(FPGA RAM)充当存储器 2.静态内存(SRAM)充当存储器 3.将静态内存换为动态内存 动态内存容量大,但是即时能力不好,它无法立即响应VGA功能模块, ...

  9. java线程池ThreadPoolExecutor类使用详解

    在<阿里巴巴java开发手册>中指出了线程资源必须通过线程池提供,不允许在应用中自行显示的创建线程,这样一方面是线程的创建更加规范,可以合理控制开辟线程的数量:另一方面线程的细节管理交给线 ...

  10. Django REST framework 源码剖析

    前言 Django REST framework is a powerful and flexible toolkit for building Web APIs. 本文由浅入深的引入Django R ...