packagecom.Utils;importjava.io.IOException;importjava.net.URLDecoder;importjava.util.HashMap;importjava.util.Map;importjavax.servlet.http.HttpServletRequest;importcom.alibaba.fastjson.JSONArray;importcom.alibaba.fastjson.JSONObject;public classrequestUtil {/*** 获取 request 中 json 字符串的内容
*
*@paramrequest
*@return: byte[]
*@throwsIOException*/
public staticString getRequestJsonString(HttpServletRequest request)throwsIOException {
String submitMehtod=request.getMethod();//GET
if (submitMehtod.equals("GET")) {
String str= new String(request.getQueryString().getBytes("iso-8859-1"),"utf-8").replaceAll("%22", "\"");
String deStr=URLDecoder.decode(str);returngetRequestGetStr(deStr);//POST
} else{returngetRequestPostStr(request);
}
}/*** 获取Get请求的 内容
*@paramstr
*@return
*/
public staticString getRequestGetStr(String str){
Map map= new HashMap<>();
String strs= str.replaceAll("&", ",");
String st= strs.replaceAll("=", ":");
System.out.println(st);
String[] param= st.split(",");for (int i = 0; i < param.length; i++) {int index = param[i].indexOf(':');
map.put(param[i].substring(0,index), param[i].substring((index + 1)));
}
String sts=JSONObject.toJSONString(map);returnsts;
}/*** 获取POST请求的 内容
*@paramrequest
*@return*@throwsIOException*/
public staticString getRequestPostStr(HttpServletRequest request)throwsIOException {byte buffer[] =getRequestPostBytes(request);
String charEncoding=request.getCharacterEncoding();if (charEncoding == null) {
charEncoding= "UTF-8";
}return newString(buffer, charEncoding);
}/*** 获取POST请求的 byte 数组
*@paramrequest
*@return*@throwsIOException*/
public static byte[] getRequestPostBytes(HttpServletRequest request)throwsIOException {int contentLength =request.getContentLength();if(contentLength<0){return null;
}byte buffer[] = new byte[contentLength];for (int i = 0; i
contentLength-i);if (readlen == -1) {break;
}
i+=readlen;
}returnbuffer;
}/*** JSONArray 根据name去重复
*@paramarray*/
public staticJSONArray delRepeatIndexid(JSONArray array) {
JSONArray arrayTemp= newJSONArray();int num = 0;for(int i = 0;i < array.size();i++){if(num==0){
arrayTemp.add(array.get(i));
}else{int numJ = 0;for(int j = 0;j < arrayTemp.size(); j++){
JSONObject newJsonObjectI=(JSONObject)array.get(i);
JSONObject newJsonObjectJ=(JSONObject)arrayTemp.get(j);
String index_idI= newJsonObjectI.get("code").toString();
String valueI= newJsonObjectI.get("name").toString();
String index_idJ= newJsonObjectJ.get("code").toString();if(index_idI.equals(index_idJ)){
arrayTemp.remove(j);
JSONObject newObject= newJSONObject();
newObject.put("code", index_idI);
newObject.put("name", valueI);
arrayTemp.add(newObject);break;
}
numJ++;
}if(numJ-1 == arrayTemp.size()-1){
arrayTemp.add(array.get(i));
}
}
num++;
}returnarrayTemp;
}
}