重磅干货,第一时间送达 每日干货
每日分享,获取相关面试资料,在“程序员Style”微信公众号后台回复文字“面试”即可!
在上篇文章中,小编整理了如何在前端页面中,对返回的url中的参数值进行接收,获取某个参数值的方法,考虑到有些朋友们(大神们除外
)还不会在后端对指定的URL字符串添加值、获取URL字符串中的参数值,于是就后端如何添加及获取进行了整理,直接上代码:
在指定url后追加参数
/*** 在指定url后追加参数* @param url* @param data 参数集合 key = value* @return*/private static String appendUrl(String url, Map<String, Object> data) {String newUrl = url;StringBuffer param = new StringBuffer();for (String key : data.keySet()) {param.append(key + "=" + data.get(key).toString() + "&");}String paramStr = param.toString();paramStr = paramStr.substring(0, paramStr.length() - 1);if (newUrl.indexOf("?") >= 0) {newUrl += "&" + paramStr;} else {newUrl += "?" + paramStr;}return newUrl;}获取指定url中的某个参数
/*** 获取指定url中的某个参数* @param url* @param name* @return*/public static String getParamByUrl(String url, String name) {url += "&";String pattern = "(\\?|&){1}#{0,1}" + name + "=[a-zA-Z0-9]*(&{1})";Pattern r = Pattern.compile(pattern);Matcher m = r.matcher(url);if (m.find( )) {return m.group(0).split("=")[1].replace("&", "");} else {return null;}}测试类:
public static void main(String[] args) throws Exception {// 追加参数// Map<String, Object> param = new HashMap<>();// param.put("id", 1);// param.put("age", 20);// System.out.println(appendUrl("http://test.com", param));// System.out.println(appendUrl("http://test.com?name=a", param));// String url = "http://test.com?name=abd&id=1&age=20";// 获取参数String url = "http://www.xxx.com/login?access_token=xxxx&id=yyyyy";System.out.println(getParamByUrl(url, "id"));}今天就分享这么多,关于Java如何给指定URL字符串添加值?如何获取URL字符串中的参数值?你学会了多少?如果觉得文章对你有一丢丢帮助,请点右下角【在看】,让更多人看到该文章。 感觉不错的话,麻烦动动小手关注一下小编啦
如有收获,点个【在看】
原文作者:程序员Style;如有侵权,请联系管理员删除。