/**
* 获得url中参数
* @param url
* @return
*/
public static Map<String, Object> getParameter(String url) {
Map<String, Object> map = new HashMap<String, Object>();
try {
final String charset = "utf-8";
url = URLDecoder.decode(url, charset);
if (url.indexOf('?') != -1) {
final String contents = url.substring(url.indexOf('?') + 1);
String[] keyValues = contents.split("&");
for (int i = 0; i < keyValues.length; i++) {
String key = keyValues[i].substring(0, keyValues[i].indexOf("="));
String value = keyValues[i].substring(keyValues[i].indexOf("=") + 1);
map.put(key, value);
}
}
} catch (Exception e) {
e.printStackTrace();
}
return map;
}
/**
* 获取request中参数
*
* @param request 页面请求
*/
public static Map<String, Object> getRequestParameters(HttpServletRequest request) {
String parameters = "";// 请求参数
String urlParameter = request.getQueryString();// 网址中的参数
if (urlParameter != null && !"".equals(urlParameter)) {
try {
urlParameter = URLDecoder.decode(urlParameter, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
} else {
urlParameter = "";
}
parameters = urlParameter;
Map<String, Object> map = new HashMap<String, Object>();
String[] arr = parameters.split("&");
for (int i = 0; i < arr.length; i++) {
String key = arr[i].substring(0, arr[i].indexOf("="));
String value = arr[i].substring(arr[i].indexOf("=") + 1);
map.put(key, value);
}
return map;
}
/**
* 测试
*
* @param args
*/
public static void main(String[] args) {
String url = "http://www.xxxxx.com/portal/login.do?#access_token=xxxx&express_id=yyyyy";
Map<String, Object> map = getParameter(url);
System.out.println(map);
}
Java 封装URL参数工具类
最新推荐文章于 2024-06-29 03:18:42 发布