展开全部
private String getSign(Map params) {
Map sortMap = new TreeMap();
sortMap.putAll(params);
// 以k1=v1&k2=v2...方式拼接参数
StringBuilder builder = new StringBuilder();
for (Map.Entry 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中(默认升序),然后e68a84e8a2ad3231313335323631343130323136353331333361316637循环拼接后md5加密后即可。