Hibernate查询方式汇总(一)
  TEZNKK3IfmPf 2024年05月31日 27 0

Hibernate查询方式:

1.基于原生sql查询。
2.基于hql的查询。

1.3.1、在查询语句中设定各种查询条件
1.3.2、支持投影查询,即仅检索出对象的部分属性
1.3.3、支持分页查询
1.3.4、支持连接查询
1.3.5、支持分组查询,允许使用HAVING 和 GROUP BY 关键字
1.3.6、提供内置聚集函数,如SUM(),MIN(),MAX()等
1.3.7、能够调用用户定义的SQL函数或标准的SQL函数
1.3.8、支持子查询
1.3.9、支持动态绑定参数

3.QBC
4.动态分离查询DetachedCriteria
5.QBE(query by Example) 通过Example编程接口进行查询
Restrictions类的常用方法

Restrictions.eq(String propertyName,Object value)
等于
Restrictions.allEq(Map propertyNameValues)
使用Map key/value 进行多个等于的比对
Restrictions.gt(String propertyName, Object value)
大于 > (gt----->greater than)
Restrictions.ge(String propertyName, Object value)
大于等于 >= (ge----->greater equal)
Restrictions.It(String propertyName, Object value)
小于< (It---->less than)
Restrictions.Le(String propertyName, Object value)
小于等于<= (le---->less equal)
Restrictions.between(String propertyName, Object lo, Object hi)
对应SQL 语句的 Between 子句
Restrictions.like(String propertyName, Object value)
对应SQL 语句的 LIKE 子句
Restrictions.in(String propertyName, Collection value)
对应SQL 语句的 in 子句
Restrictions.and(Criterion lhs, Criterion rhs)
And关系
Restrictions.or(Criterion lhs, Criterion rhs)
Or关系
Restrictions.sqlRestriction(String sql,Object[] values,Type[] types)
SQL限定查询

工具类Order 提供设置排序方式

Order.asc(String propertyName)
升序排序
Order.desc(String propertyName)
降序排序

工具类Projections 提供对查询结果进行统计与分组操作

Porjections.avg(String propertyName)
求某属性的平均值
Projections.count(String propertyName)
统计某属性的数量
Projections.countDistinct(String propertyName)
统计某属性的不同值的数量
Projections.groupProperty(String propertyName)
指定一组属性值
Projections.max(String propertyName)
某属性的最大值
Projections.min(String propertyName)
某属性的最小值
Projections.projectionList()
创建一个新的projectionList 对象
Projections.rowCount()
查询结果集中记录的条数
Projections.sum(String propertyName)
返回某属性值的合计

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2024年05月31日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2024年03月29日   112   0   0 字符串String
  TEZNKK3IfmPf   2024年03月22日   69   0   0 javaString
  TEZNKK3IfmPf   2023年11月15日   25   0   0 the publicString
TEZNKK3IfmPf