解剖呼吸系统重点:hibernate的HQL的命名参数与Query接口的分页查询

来源:百度文库 编辑:偶看新闻 时间:2024/04/27 16:26:31
HQL的命名参数与Query接口的分页查询
HQL查询:
1.有关hql查询语句中的问号参数形式,如果出现有多个问号,这对后面设置参数就比较麻烦。
如:from User user where user.name=? and user.age=? and user.sex=? and ...;
    对这样的语句赋值,容易出错。
   可以采用另一种命名参数方式解决它。
如:from User user where user.name=:var1 and user.age=:var2 and ...
    query.serString("var1",zhangsan);
    query.setInt("var2",12);
   这样的话,即使hql语句中,后面的顺序写反了,也不会影响后面赋值。

2.Query接口中的主要方法
    
    (1).list(): List list = query.list();执行查询并返回对象的集合
    
  (2).相关类型的set方法。query.setXxx();
 
  (3).
  //第一条记录从第n条开始取
  query.setFirstResult(n);
  //表示取m条记录
  query.setMaxResult(m);
  这两个方法可以实现分页.它根据hibernate.cfg.xml配置文件中配置的方言【告诉hibernate使用的是哪个数据库】的类文件,进行自动地识别并调用相应数据库的分页实现。
 
  针对数据库而言分页语句,在各个数据库中是不一样的。