现象:
查询列表,点击分页,会丢掉查询区域已经选定的查询条件。
方案:
检查page tag lib,发现有个参数叫做searchParams, 样式为:
。
思路: 从HttpServletRequest中得到所有的Params,重新组织成 searchParam。
直接上代码:
String queryString = "";
for (String key : request.getParameterMap().keySet()) {
if (key.equals("page") || key.equals("sortType")) continue;
String[] values = request.getParameterMap().get(key);
for (int i = 0; i < values.length; i++) {
String value = values[i];
queryString += key + "=" + value + "&";
}
}
// 去掉最后一个空格
if (null != queryString && !"".equals(queryString)){
queryString = queryString.substring(0, queryString.length() - 1);
}
request.setAttribute("searchParams", queryString);
最后记得要set到Request的attribute中。