最近在做一个公文交换的项目,使用hibernate的Criteria查询,279页的数据。第1、2页查询的话只要3-4秒,如果直接跳到最后一页要将近40秒才能查询出数据。延迟加载已经试过了,基本没什么影响。就是java程序发送一个到最后一页进行查询的SQL处理完需要将近40秒,数据库是sybase。哪位高人有什么高招?Hibernate大数据

解决方案 »

  1.   

    @SuppressWarnings("unchecked")
    public java.util.List<T> queryEntity(int page, int pagesize,
    ICriteriaQuery query) { Criteria criteria = getEntityCriteria(); query.getQueryCriteria(criteria); criteria.setFirstResult(--page*pagesize);
    criteria.setMaxResults(pagesize);
    criteria.setCacheable(true);
    criteria.setCacheMode(CacheMode.NORMAL);

    return criteria.list();
    }
      

  2.   

    直接获得connection对象或者调用spring jdbctemplate使用本地sql查询,
    分页做好,不会卡的,你的数据量不是很大
      

  3.   

    hibernate 大数据