HQL是Hibernate Query Language的缩写,提供更加丰富灵活、更为强大的查询能力;HQL更接近SQL语句查询语法。
按照条件查询封装数据有三种处理方式
1.VO
从创建一个新的实体类,新实体类的属性就是当前HQL返回的数据
2.Object 数组接受换回的数据
3.POJO
1.需要创建构造方法,接受HQL查询结果
2.HQL,编写的时候在 select ho new 实体类,参数传入查询属性
select new User (u.id,u.username,u.password) from User as u where u.username = :username
----------------------------------------------------------------------------------------------------------------
聚合函数
String hql = "SELECT MAX(id) as m from User";s
String hql = "SELECT MIN(id) as m from User";
String hql = "select count(*) as a from User";
String hql ="SELECT AVG(id) from User";
String hql = "SELECT SUM(id) from User";
2.分页
query.setMaxResults(int number); 每页条数
query.setFirstResult(2); 起始页值(当前页数 -1)*每页条数
3.参数处理方式
· 1.占位符(?)
2.参数处理(:别名)
4.条件查询三种处理方式之一(VO)
-------------------------------------------------------------------------------------------------------------
条件查询另外两种处理方式
命名查询(HibernateUtis)
==================================
1.条件查询封装处理三种方法
2.分页查询数据
3.命名查询
4.聚合函数操作