public static String encodingParams(Map<String, String> params, String encoding)
            throws UnsupportedEncodingException {
        StringBuilder sb = new StringBuilder();
        if (null == params || params.isEmpty()) {
            return null;
        }
        for (Map.Entry<String, String> entry : params.entrySet()) {
            if (StringUtils.isEmpty(entry.getValue())) {
                continue;
            }
            
            sb.append(entry.getKey()).append('=');
            sb.append(URLEncoder.encode(entry.getValue(), encoding));
            sb.append('&');
        }
        
        return sb.toString();
    }
@Test
    void testEncodingParamsMap() throws UnsupportedEncodingException {
        Map<String, String> params = new LinkedHashMap<>();
        params.put("a", "");
        params.put("b", "x");
        params.put("uriChar", "=");
        params.put("chinese", "测试");
        assertEquals("b=x&uriChar=%3D&chinese=%E6%B5%8B%E8%AF%95&", HttpUtils.encodingParams(params, "UTF-8"));
    }