public class UrlUtils { /** * Assign value to url parameter * * @param url * @param paramMap * @return url with assigned value */ public static String setUrlParamValue(String url, Map<String, Object> paramMap) { Map<String, Object> map = new LinkedHashMap<String, Object>(); if (url.indexOf("?") > 0) { String[] tempArr = url.split("\\?"); String uri = tempArr[0]; String params = tempArr[1]; if (params.indexOf("&") > 0) { String[] paramExpArr = params.split("&"); for (String paramExp : paramExpArr) { if (paramExp.indexOf("=") > 0) { String[] param = paramExp.split("="); map.put(param[0], param[1]); } } } else { if (params.indexOf("=") > 0) { String[] param = params.split("="); map.put(param[0], param[1]); } } // 遍历map for (Map.Entry<String, Object> entry : map.entrySet()) { for (Map.Entry<String, Object> paramEntry : paramMap.entrySet()) { if (entry.getKey().equals(paramEntry.getKey())) { map.put(entry.getKey(), paramEntry.getValue()); } } } // 再次拼接url StringBuilder sb = new StringBuilder(uri + "?"); for (Map.Entry<String, Object> entry : map.entrySet()) { sb.append(entry.getKey()); sb.append("="); sb.append(entry.getValue()); sb.append("&"); } sb = sb.deleteCharAt(sb.toString().lastIndexOf("&")); return sb.toString(); } return url; } public static void main(String[] args) { String url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=wx7afbb2e0173ef3d9&secret=5e1d7d992232ad85d26f960f59f6fd11&code=&grant_type=authorization_code"; Map<String, Object> map = new LinkedHashMap<String, Object>(); map.put("appid", "123"); map.put("secret", "123"); map.put("code", "code"); map.put("grant_type", "authorization_code"); UrlUtils.setUrlParamValue(url,map); } }
URL parameter settings
Guess you like
Origin http://43.154.161.224:23101/article/api/json?id=326355461&siteId=291194637
Recommended
Ranking