1. 命名查询
在hql语句中可使用?作为参数占位符也可指定名字来作参数占位符,指定参数名需要在之前添加:(冒号)
(注意:from后面接的不是表名,而是所创建的实体类的名字)
2. 分页查询
分页查询主要采用两个方法:setFirstResult和setMaxResults
setFirstResult():设置从第几页开始查找
setMaxResults:设置一页中的条数
3. 投影查询
投影查询主要是用于查询部分属性
如下图,查询的结果需要使用一个对象数组的List进行存取
改进后,在对应的实体类中需要有相应的构造函数
4. 报表查询
主要是对查询结果进行分组,可使用聚合函数
tips: where无法与聚合函数一起使用,所以增加having
5. 迫切左外连接
6. 左外连接
7. 将hql写在映射文件中
tips:在xml文件中设计><等需要使用<![CDATA[内容]]>