#
Junjie
2 天以前 13b31b2ca2a5f8600002a042b536c9d5529842e3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package com.core.utils;
 
import com.core.common.Cools;
 
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
 
public class SignUtils {
 
    public static String sign(Map<String, Object> param, String key) {
        List<String> list = new ArrayList<>();
        for (String mapKey : param.keySet()) {
            Object value = param.get(mapKey);
            if ("sign".equals(mapKey) || value == null) {
                continue;
            }
            list.add(mapKey + "=" + value + "&");
        }
        String[] arr = list.toArray(new String[0]);
        Arrays.sort(arr, String.CASE_INSENSITIVE_ORDER);
        StringBuilder builder = new StringBuilder();
        for (String item : arr) {
            builder.append(item);
        }
        String text = builder.toString() + "key=" + key;
        return Cools.md5(text).toUpperCase();
    }
}