Hibernate HQL与QBC 常用语法

Hibernate HQL与QBC 常用语法

Hibernate中有两种查询方法,一种是HQL 全称:hibernate Query Language,另外种是QBC 全称:Query By Criteria,HQL优点是与sql相近,可读性好,功能强大,效率高。但它是在运行时才被解析,以字符形式出现,所以扩展性差。而QBC提供面向对象的接口,编译时就可被解析,便于排错调试,扩展性好,允许用户扩展Criteria接口。但它与SQL差异很大,可读性差,不支持报表和子表查询。

Hibernate  常用语法:

HQL QBC 含义
= Restrictions.eq() 等于equal
<> Restrictions.ne() 不等于not equal
> Restrictions.gt() 大于greater than
>= Restrictions.ge() 大于等于greater than or equal
< Restrictions.lt() 小于less than
<= Restrictions.le() 小于等于less than or equal
is null Restrictions.isnull() 等于空值
is not null Restrictions.isNotNull() 非空值
like Restrictions.like() 字符串模式匹配
not like Restrictions.not(Restrictions.like()) 字符串模式匹配)
and Restrictions.and() 逻辑与
and Restrictions.conjunction() 逻辑与
or Restrictions.or() 逻辑或
or Restrictions.disjunction() 逻辑或
not Restrictions.not() 逻辑非
in(列表) Restrictions.in() 等于列表中的某一个值
not in(列表) Restrictions.not(Restrictions.in()) 不等于列表中任意一个值

你可能感兴趣的:(hibernate)