1. 只拼接参数:(适用于拼接的参数中没有特殊字符)
/** * @Description get请求URL拼接参数 * @param url * 接口地址(无参数) * @param map * 拼接参数集合 */ public static String getAppendUrl(String url, Map<String, String> map) { if (map != null && !map.isEmpty()) { StringBuffer buffer = new StringBuffer(); Iterator<Entry<String, String>> iterator = map.entrySet().iterator(); while (iterator.hasNext()) { Entry<String, String> entry = iterator.next(); if (StringUtils.isEmpty(buffer.toString())) { buffer.append("?"); } else { buffer.append("&"); } buffer.append(entry.getKey()).append("=").append(entry.getValue()); } url += buffer.toString(); } return url; }
2.拼接参数而且URL编码(适用于拼接参数中有特殊字符 eg:空格 之类的)
/** * @Description get请求URL拼接参数 & URL编码 * @param url * 接口地址(无参数) * @param map * 拼接参数集合 */ public String getAppendUrl(String url, Map<String, String> map) { StringBuffer buffer = new StringBuffer(); if (map != null && !map.isEmpty()) { Iterator<Entry<String, String>> iterator = map.entrySet().iterator(); while (iterator.hasNext()) { Entry<String, String> entry = iterator.next(); if (StringUtils.isEmpty(buffer.toString())) { buffer.append("?"); } else { buffer.append("&"); } buffer.append(entry.getKey()).append("=").append(entry.getValue()); } } return url + URLEncoder.encode(buffer.toString()); }