• JAVA从URL参数链接中获取指定参数的值


    import java.util.HashMap;
    import java.util.Map;
    
    /**
     * @author yvioo
     */
    public class UrlUtils {
    
        /**
         * 获取请求地址中的某个参数
         * @param url
         * @param name
         * @return
         */
        public static String getParam(String url, String name) {
            return urlSplit(url).get(name);
        }
    
        /**
         * 去掉url中的路径,留下请求参数部分
         * @param url url地址
         * @return url请求参数部分
         */
        private static String truncateUrlPage(String url) {
            String strAllParam = null;
            String[] arrSplit = null;
            url = url.trim().toLowerCase();
            arrSplit = url.split("[?]");
            if (url.length() > 1) {
                if (arrSplit.length > 1) {
                    for (int i = 1; i < arrSplit.length; i++) {
                        strAllParam = arrSplit[i];
                    }
                }
            }
            return strAllParam;
        }
    
        /**
         * 将参数存入map集合
         * @param url  url地址
         * @return url请求参数部分存入map集合
         */
        public static Map<String, String> urlSplit(String url) {
            Map<String, String> mapRequest = new HashMap<String, String>();
            String[] arrSplit = null;
            String strUrlParam = truncateUrlPage(url);
            if (strUrlParam == null) {
                return mapRequest;
            }
            arrSplit = strUrlParam.split("[&]");
            for (String strSplit : arrSplit) {
                String[] arrSplitEqual = null;
                arrSplitEqual = strSplit.split("[=]");
                //解析出键值
                if (arrSplitEqual.length > 1) {
                    //正确解析
                    mapRequest.put(arrSplitEqual[0], arrSplitEqual[1]);
                } else {
                    if (arrSplitEqual[0] != "") {
                        //只有参数没有值,不加入
                        mapRequest.put(arrSplitEqual[0], "");
                    }
                }
            }
            return mapRequest;
        }
    
    
    }

    调用

     @RequestMapping("/getParam")
        @ResponseBody
        public String getParam(HttpServletRequest request){
            return UrlUtils.getParam("http://localhost:8081/getParam?x=1&value=2&time=3","x");
        }
    -----------------------有任何问题可以在评论区评论,也可以私信我,我看到的话会进行回复,欢迎大家指教------------------------ (蓝奏云官网有些地址失效了,需要把请求地址lanzous改成lanzoux才可以)
  • 相关阅读:
    fiddler---Fiddler模拟接口数据(mock)
    Intellij IDEA gradle项目目录介绍
    Windows netstat 查看端口、进程占用
    SpringMVC和spring常见面试题总结
    mybatis一级缓存二级缓存
    Mybatis常见面试题总结
    Spring容器
    深入理解JVM类加载机制
    理解Spring框架中Bean的5个作用域
    编程语言的分类与关系
  • 原文地址:https://www.cnblogs.com/pxblog/p/14484810.html
Copyright © 2020-2023  润新知