1.java後端封裝前段頁面請求參數。
/**
* 快捷封裝所有請求參數
* 繼承此類的子類可以使用此方法
* @param request
* @return Map
*/
protected final synchronized Map<String, Object> wrapParams(HttpServletRequest request) {
Map<String, Object> params = new HashMap<>();
Enumeration<String> enumeration = request.getParameterNames();
while (enumeration.hasMoreElements()) {
String name = enumeration.nextElement();
if ("pageData".equals(name)) {
try {
String value = request.getParameter(name);
params.putAll(JSONObject.parseObject(value, Map.class));
} catch (Exception e) {
e.printStackTrace();
}
} else {
String[] values = request.getParameterValues(name);
if (values.length == 0) {
params.put(name, null);
} else if (values.length == 1) {
params.put(name, values[0]);
} else {
// 參數是數組,轉成字符串,用","連接
params.put(name, values);
}
}
}
log.debug("前端提交參數:" + JSON.toJSONString(params));
return params;
}