Hibernate常用查询
1、通过Criteria查询
Criteria criteria = this.sessionFactory.getCurrentSession().createCriteria(xxx.class); criteria.add(Restrictions.eq("isDeleted", 0)); criteria.add(Restrictions.in("fullName",depList)); List<xxx> resultList = new ArrayList<>(); resultList.addAll(criteria.list());
2、通过HQL查询
@Override public Integer getDailyProjectNumByDepNameAndTime(String depName,String startDate,String endDate){String sql = "select count(*) from xxx where creator_department like:depName and project_type_enum='日常项目' and gmt_create>=:ds and gmt_create<=:de";Query query = this.sessionFactory.getCurrentSession().createSQLQuery(sql);query.setParameter("ds",startDate);query.setParameter("de",endDate);query.setParameter("depName",depName);BigInteger bigInteger = (BigInteger) query.uniqueResult();return bigInteger.intValue(); }
3、分页查询
@Override public List<xxx> listByDepartmentAndDateAndPage(ProjectEfficiencyQuery query){Criteria criteria = this.sessionFactory.getCurrentSession().createCriteria(xxx.class);Date startDate = DateUtil.getDateTimeFromString(query.getStartDate());Date endDate = DateUtil.getDateTimeFromString(query.getEndDate());criteria.add(Restrictions.eq("stamp", "research"));criteria.add(Restrictions.eq("type", "project"));criteria.add(Restrictions.like("department", query.getDepName(), MatchMode.START));criteria.add(Restrictions.ge("gmtCreate", startDate));criteria.add(Restrictions.le("gmtCreate", endDate));int total = ((Long) criteria.setProjection(Projections.rowCount()).uniqueResult()).intValue();query.setTotal(total);criteria.setProjection(null);criteria.setFirstResult((query.getPageNum()-1)*query.getPageSize());criteria.setMaxResults(query.getPageSize());List<xxx> list = (List<xxx>)criteria.list();return list; }
转载于:https://www.cnblogs.com/shuhe-nd/p/11529651.html
Hibernate常用查询相关推荐
- SSH学习-Hibernate关联查询
与MyBatis类似,Hibernate也有关联查询,数据库中表与表之间的关联关系使用主外键的形式体现,实体对象之间的关联关系体现在对象与对象的引用.在Mybatis中,当涉及到复杂查询并且表之间存在 ...
- Hibernate【查询、连接池、逆向工程】
2019独角兽企业重金招聘Python工程师标准>>> 前言 在Hibernate的第二篇中只是简单地说了Hibernate的几种查询方式....到目前为止,我们都是使用一些简单的主 ...
- ( 转)Hibernate常用API
http://blog.csdn.net/yerenyuan_pku/article/details/65103203 可在度娘上摘抄如下文字: Hibernate的核心类和接口一共有6个,分别为:S ...
- Hibernate数据查询教程
Hibernate数据查询教程 转载▼9.1 Hibernate数据查询 数据查询与检索是Hibernate的一个亮点.Hibernate的数据查询方式主要有3种,它们是: l Hi ...
- Hibernate各种查询方法
1 hibernate的查询方式 2 对象导航查询 3 hql查询 (1)查询所有 (2)条件查询 (3)排序查询 (4)分页查询 (5)投影查询 (6)聚集函数使用 4 qbc查询 (1)查询所有 ...
- Spring Hibernate sqlquery 查询结果 缓存问题
问题描述:当我们使用Spring+Hibernate框架的Web工程时,在Action中的一个方法中使用SQLQuery查询,第二次查询时,得到的结果集不是最近的数据库数据.就是第一次查询后,更新数据 ...
- MapInfo中常用查询函数及用法
MapInfo中常用查询函数及用法: 函数用途 语法 备注 图层中选点 Str$(obj)="point": Str(String)表示字符串:point表示点: 图层中选线 St ...
- SqlSugar常用查询实例-拉姆达表达式
SqlSugar支持拉姆达表达式查询,匿名对象参数等,相对还是比较方便好用的. 一.查询列表: //查询列表SqlSugarClient db = SugarContext.GetInstance() ...
- Hibernate 学习笔记(二)—— Hibernate HQL查询和 QBC 查询
目录 一.Hibernate 的 HQL 查询 1.1.查询所有数据 1.2.条件查询 1.3.排序查询 1.4.统计查询 1.5.分页查询 1.6.投影查询 二.Hibernate 的 QBC 查询 ...
- python-django-ORM,常用查询方式
介绍django model 的一些常用查询方式 首先是一些文档性的帮助 __exact 精确等于 like 'aaa' __iexact 精确等于 忽略大小写 ilike 'aaa' __conta ...
最新文章
- 你不能准时下班的根本原因是……
- BZOJ 4278 [ONTAK2015]Tasowanie (后缀数组)
- JavaScript——String转DOM对象解决方案
- Java手机忘了密码怎么办_手机开机密码忘记了怎么办
- oracle字段重复新增错误,Oracle 判断表或字段是否存在新增/修改表结构可重复执行sql...
- 什么是ABAP的STATE_READ_ACCESS
- 柏林噪声双线性插值初步了解(js)
- 3-4笔刷的详细设定
- eclipse在debug启动时无法启动解决办法
- java Hello World程序分析(翻译自Java Tutorials)
- Oracle 无备份情况下的恢复--临时文件/在线重做日志/ORA-00205
- ats反向代理和重定向
- Instagram技术透析:Mike Krieger, Instagram at the Airbnb tech talk, on Scaling Instagram
- 初探线程之线程竞争及故障
- 数据库原理及应用教程 第4版|微课版答案 陈志泊主编 课后习题答案
- mysql 多选数据类型_【多选题】Mysql定点数数据类型包括( )。【本题2项正确】...
- ArcGIS代码进行重分类
- 第九届蓝桥杯单片机省赛
- QCIF CIF 2CIF 4CIF 普及
- 20条理由告诉你,为什么当前的深度学习成了人工智能的死胡同?