主要是 有些表的 如果 数据量太大的话。 执行查询,会 导致 数据库 比较卡 或者 说 量太大了, 服务器挂掉都有 可能。 可是一般 不会 有这样的情况的。 数据量太大了, 一般也有分库分表啊, 分布式等等的 可是还是 写出来了, 防止什么时候 用到的, 其实 这个 不算难, 理解分页原理 加个 循环即可
// 拼SQL使用 map
HashMap conditionMap = new HashMap();
String whereSqlString = "";// sql字符串
whereSqlString = " a.status_='0' and a.actived_='0' ";// 有效的
conditionMap.put("whereSql", whereSqlString);
// 确定 每页的记录数
final int pageSize = 20;
// 查询总数
Integer totalRecords = hrEffUserInfoDomain.count(conditionMap);
if (totalRecords == 0) {
return;
}
// 总页数
int totalPage = PageUtil.getTotalPage(totalRecords, pageSize);
System.out.println(">>>总记录数>>>" + totalRecords + ">>>>>总页数>>"
+ totalPage);
logger.error(">>>总记录数>>>" + totalRecords + ">>>>>总页数>>" + totalPage);
for (int i = 1; i <= totalPage; i++) {
System.out.println("当前页数>>>" + i + "每页记录数>>>" + pageSize);
logger.error("当前页数>>>" + i + "每页记录数>>>" + pageSize);
// 自动 翻页
Page page = PageUtil.buildPage(i, pageSize);
List userInfoPosPage = new ArrayList();
// 分页查询 处理
userInfoPosPage = hrEffUserInfoDomain.findPaged(conditionMap, page);
for (HrEffUserInfoPo hrEffUserInfoPo : userInfoPosPage) {
logger.error(hrEffUserInfoPo.getEmployeeName()
+ ">>>>>>>>循环处理业务>>>>>" + userInfoPosPage.size());
System.out.println(hrEffUserInfoPo.getEmployeeName()
+ ">>>>>>>>循环处理业务>>>>>" + userInfoPosPage.size());
break;
}
}