Hibernate QBC
QBC查询:
Query By Criteria 使用面向对象的方式查询 和HQL单表查询相似,但不包含别名查询和具名查询
1 全表查询
Criteria ce = session.createCriteria(Customer.class);
List<Customer> list = ce.list();
for(Customer customer : list) {
System.out.println(customer);
}
2 条件查询
Criteria ce = session.createCriteria(Order.class);
ce.add(Restrictions.eq("orderno", "111"));
List<Order> list = ce.list(); Criteria ce = session.createCriteria(Order.class);
ce.add(Restrictions.and(
Restrictions.like("orderno", "%111%"),
Restrictions.like("productName", "%手机%")
));
List<Order> list = ce.list();
3 分页查询
Criteria ce = session.createCriteria(Order.class);
//分页
ce.setFirstResult(0);
ce.setMaxResults(5);
List<Order> list = ce.list();
4 查询排序
Criteria ce = session.createCriteria(Order.class);
ce.addOrder(org.hibernate.criterion.Order.desc("id"));
List<Order> list = ce.list();
5 聚合查询
Criteria ce = session.createCriteria(Order.class); /*ce.setProjection(Projections.rowCount());
Long count = (Long)ce.uniqueResult();*/ ce.setProjection(Projections.max("id"));
Integer count = (Integer)ce.uniqueResult(); System.out.println(count);
6 投影查询
Criteria ce = session.createCriteria(Order.class);
ProjectionList pList = Projections.projectionList();
pList.add(Property.forName("orderno"));
pList.add(Property.forName("productName"));
ce.setProjection(pList);
List<Object[]> list = ce.list(); for(Object[] order : list) {
for(Object column : order) {
System.out.print(column);
System.out.print(" ");
}
System.out.println();
}
Hibernate QBC的更多相关文章
- Hibernate QBC 简单收集
Hibernate QBC 介绍: QBC(Query By Criteria)通过 API 来检索对象 主要由 Criteria 接口.Criterion 接口和 Exception 类组成,支持在 ...
- Hibernate QBC运算符
HQL运算符 QBC运算符 含义 = Restrictions.eq() 等于equal <> Restrictions.ne() 不等于not equal > Restrict ...
- Hibernate QBC 条件查询(Criteria Queries) and Demos
目录 创建一个Criteria 实例 限制结果集内容 结果集排序 关联 动态关联抓取 查询示例 投影Projections聚合aggregation和分组grouping 离线detached查询和子 ...
- hibernate QBC查询
HQL运算符 QBC运算符 含义 = Restrictions.eq() 等于equal <> Restrictions.ne() 不等于not equal > Restrict ...
- 【Hibernate QBC】
HibernateQBC public class HibernateQBC { //演示离线查询 @Test public void testSelect6() { SessionFactory s ...
- Spring Data Jpa 初探
Spring Data 项目的目的是为了简化构建基于 Spring 框架应用的数据访问计数,包括非关系数据库.Map-Reduce 框架.云数据服务等等;另外也包含对关系数据库的访问支持. 下载网址: ...
- jeecg使用心得
接触到jeecg框架是在去年,接触到了jeecg开源框架,此框架为企业级急速开发框架,不了解的可以百度下这类框架的,对于目前状态来说,此框架确实也满足了所需,此刻就开始接触jeecg框架,去年六七月份 ...
- JEECG开发第一个菜单显示设备列表
一.新建设备表(t_base_device) ; -- ---------------------------- -- Table structure for t_base_device -- --- ...
- Hibernate 查询方式(HQL/QBC/QBE)汇总
作为老牌的 ORM 框架,Hibernate 在推动数据库持久化层所做出的贡献有目共睹. 它所提供的数据查询方式也越来越丰富,从 SQL 到自创的 HQL,再到面向对象的标准化查询. 虽然查询方式有点 ...
随机推荐
- hasura graphql-engine v1.0.0-alpha30 remote schema stitch 试用
新的hasura graphql-engine 代码仓库中已经包含了一个基于express 的简单graphql server, 可以用来测试模式拼接 graphql server 代码 项目结构 ├ ...
- 让Windows XP的键盘“说话”,全语音键盘
长期面对无声的电脑,我们难免疲倦.如果正在输入的内容被系统一字(字母)不差地念出来,你还能在无声的疲倦中输入错误的内容吗?本文以Windows 2000/XP中一个鲜为人知的“讲述人”为例,来教你DI ...
- windows下能搭建php-fpm吗 phpstudy
这个Windows和Linux系统是不一样的,因为一般nginx搭配php需要php-fpm中间件,但是Windows下需要第三方编译. 下载的包里有php-cgi.exe 但不是php-fpm如果想 ...
- TypeScript 之 声明文件的发布
https://www.tslang.cn/docs/handbook/declaration-files/publishing.html 发布声明文件到npm,有两种方式: 与你的npm包捆绑在一起 ...
- docker 运行java程序时区问题
如果 docker 上面 java 的当前时间比,真实时间慢了8 小时,那估计就是时区问题了, 需要在 打包docker镜像的时候 带上 localtime 和 timezone.(这2 个文件 ...
- es中级部分知识点总结
--------------------------------------------------------------- 搜索开始-------------------------------- ...
- LOJ 2586 「APIO2018」选圆圈——KD树
题目:https://loj.ac/problem/2586 只会 19 分的暴力. y 都相等,仍然按直径从大到小做.如果当前圆没有被删除,那么用线段树把 [ x-r , x+r ] 都打上它的标记 ...
- Maven install报MojoFailureException
[ERROR] 位置: 类 com.spark.test.JavaDirectKafkaWordCount [ERROR] /I:/TrueTimeControlOnSparkByJava/src/m ...
- php 函数func_get_args()、func_get_arg()与func_num_args()之间的比较
在PHP的官方文档上的个自定义如下: func_get_args():返回一个包含函数参数列表的数组. func_get_arg():返回指定的参数值. func_num_args():返回调用函数的 ...
- js图片预加载后触发操作
为了使得图片加载完,再触发回调函数,需进行图片预加载处理 function loadImage(url, callback) { var img = new Image(); img.src = ur ...