大家看下下面两段查询的代码?
问题是我用上面的代码查询时候 没查一条数据就出一条查询语句也就是操作次数据库。我数据库有500多条数据,每次查询出来都特别的慢,
相反下面的查询页一样是500条数据,而只对数据库操作一次,只出SQL语句,【关联表除外 examinee表】谁能说下原因吗?
select new Map和它有关吗?
String hql = "select new Map(a.organ" + ((getCurrentOrgan().getParent() == null) ? ".parent" : "") + " as organ ,a as examinee) from HisExaminee a where a.testPlan.id=:testPlanId  and a.organ.hierarchy like:hierarchy";
hql = addEnrollReportWhere(hql);
hql += " order by a.organ.hierarchy" + ",a.id";
dataList = getEntityManager().findByNamedParam(hql, "testPlanId,hierarchy", testPlanId, getCurrentOrgan().getHierarchy() + "%") String hql = "from Examinee a where a.testPlan.id=:testPlanId  and a.organ.hierarchy like:hierarchy";
hql = addEnrollReportWhere(hql);
hql += " order by a.workItem.id,a.organ.name,a.testSort,a.id";
dataList = getEntityManager().findByNamedParam(hql, "testPlanId,hierarchy", getCurrentFlowTestPlan().getId(), getCurrentOrgan().getHierarchy() + "%");
}