从url字符串中获取参数map

一个小的工具方法,用来String类型的url中的params转换成一个map。入口是调用toMap方法

/**
     * 去掉url中的路径,留下请求参数部分
     * @param strURL url地址
     * @return url请求参数部分
     */
    private static String truncatePath(String strURL){
        if(StringUtils.isNotEmpty(strURL)){
            String[] arrSplit = strURL.trim().split("[?]");
            if(arrSplit.length > 1){
                return arrSplit[1];
            }
        }
        return null;
    }


    /**
     * 解析url,获取参数
     * @param url
     * @return
     */
    private static Map<String, String> toMap(String url) {
        final Map<String, String> paramsMap = new LinkedHashMap<String, String>();
        if ((url = truncatePath(url)) != null && url.indexOf(PARAM_DEFINE) > -1) {
            Stream.of(url.split(PARAM_TOKENIZER)).forEach( str -> paramsMap.put(str.split(PARAM_DEFINE)[0], str.split(PARAM_DEFINE)[1]));
        }
        return paramsMap;
    }

猜你喜欢

转载自daichenqiu.iteye.com/blog/2415833