Map<String,?String>?sortMap?=?new?TreeMap<String,?String>();
sortMap.putAll(params);
//?以k1=v1&k2=v2...方式拼接參數
StringBuilder?builder?=?new?StringBuilder();
for?(Map.Entry<String,?String>?s?:?sortMap.entrySet())?{
String?k?=?s.getKey();
String?v?=?s.getValue();
if?(StringUtils.isBlank(v))?{//?過濾空值
continue;
}
builder.append(k).append("=").append(v).append("&");
}
if?(!sortMap.isEmpty())?{
builder.deleteCharAt(builder.length()?-?1);
}
return?Md5Util.md5Encode(builder.toString()).toUpperCase();
}
將所有參數放入treeMap中(默認升序),然後循環拼接後md5加密後即可。