分页查询和分页缓存查询,List>遍历和Map遍历

分页查询

String sql = "返回所有符合条件记录的待分页SQL语句";
int start = (page - 1) * limit + 1;
int end = page * limit;
sql = "select * from (select fulltable.*, ROWNUM RN from (" + sql + ") fulltable where ROWNUM <= " + end + ") where RN >= " + start;

分页缓存查询

private static List<Map<String, Object>> storageList;
@PostConstruct//在需要自动启动的方法前加注释 @PostConstruct
@Override
public void refreshStorageMemory() {
String sql = "select * from DM_STORAGE";
storageList = dmJdbcTemplate.queryForList(sql);
}
@Override
public List<Map<String, Object>> selectStorage(Integer page, Integer limit, Map<String, Object> operator) {
if (page != null && limit != null && limit > 0) {
int start = (page - 1) * limit;
int end = page * limit;
if (end > storageList.size()) {
end = storageList.size();
}
return storageList.subList(start, end);
}
else {
return storageList;
}
}

List<Map<,>>遍历取出Map

Map<String, Object> matAuxPlanRec;
for (int i = 0; i < matAuxPlanRecList.size(); i++) {
matAuxPlanRec = matAuxPlanRecList.get(i);
}

Map的get()方法获取key对应的value:String UNIT_ = (String) matAuxPlanRec.get("UNIT_");
Map遍历:

for (Map.Entry<String, Object> entry : matAuxPlanRec .entrySet()) {
System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
}
上一篇:[转]javascript 快速隐藏/显示万行表格列的方法


下一篇:JavaScript快速入门(四)——JavaScript函数