我想问的问题是关于hibernate的动态分页查询的问题。1,动态,2,分页。我们都知道,动态查询用Criteria是非常方便的,,
比如。  public Listfn(String name,Session session,int first,int maxResult)
  {
      Criteria criteria=session.createCriteria(Student.class);
      int dataCount=0;
      if(name!=null && name.equals(""))
        Criteria.add(name);
      List list=criteria.list();
      if(list.size())
      {
        dataCount=list.size();    //这个是查询的总数,以备分页的时候用到。
      }
      criteria.setFirstResult((first-1)*maxResult);
      criteria.setMaxResults(maxResult);
      list=criteria.list();
      return list;
 }上面,的第一个查询我们可以看出是查找一个符合条件的有多少个数据,,但是如果数据两很打,那么这个效率是很低的,因为hibernate查询之后,会把查到的数据赋值给Student这个类的实例,如果有10W条记录 ,那么要执行10W次,而且,第二次又执行一次查询。虽然这个查询不会对性能造成什么影响。。所以,我想问一下有什么解决办法。。HQL和QBC(也就是上面这种)是一样的效果,用sql倒是可以查询出来,,但是动态查询用sql ,拼接字符串是很麻烦的,请大家讲一下,,谢谢了。。