您的位置:首页 > 编程语言 > Java开发

Java获取URL中的参数

2012-11-16 23:01 295 查看
有时候我们需要在Java中解析URL,但是又用不了JSP里的那一套东西。

这个函数能把URL里的GET参数放到对应的HashMap中,并且用异常处理,比较实用。

public static Map<String, List<String>> getQueryParams(String url) {
    try {
        Map<String, List<String>> params = new HashMap<String, List<String>>();
        String[] urlParts = url.split("\\?");
        if (urlParts.length > 1) {
            String query = urlParts[1];
            for (String param : query.split("&")) {
                String[] pair = param.split("=");
                String key = URLDecoder.decode(pair[0], "UTF-8");
                String value = "";
                if (pair.length > 1) {
                    value = URLDecoder.decode(pair[1], "UTF-8");
                }
 
                List<String> values = params.get(key);
                if (values == null) {
                    values = new ArrayList<String>();
                    params.put(key, values);
                }
                values.add(value);
            }
        }
 
        return params;
    } catch (UnsupportedEncodingException ex) {
        throw new AssertionError(ex);
    }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: