• SpringBoot获取所有接口的路由


        @Autowired
        WebApplicationContext applicationContext;
     
        @RequestMapping(value = "v1/getAllUrl", method = RequestMethod.POST)
        public Object getAllUrl() {
            RequestMappingHandlerMapping mapping = applicationContext.getBean(RequestMappingHandlerMapping.class);
            // 获取url与类和方法的对应信息
            Map<RequestMappingInfo, HandlerMethod> map = mapping.getHandlerMethods();
            
    //      List<String> urlList = new ArrayList<>();
    //      for (RequestMappingInfo info : map.keySet()) {
    //          // 获取url的Set集合,一个方法可能对应多个url
    //          Set<String> patterns = info.getPatternsCondition().getPatterns();
    //
    //          for (String url : patterns) {
    //              urlList.add(url);
    //          }
    //      }
     
            List<Map<String, String>> list = new ArrayList<Map<String, String>>();
            for (Entry<RequestMappingInfo, HandlerMethod> m : map.entrySet()) {
                Map<String, String> map1 = new HashMap<String, String>();
                RequestMappingInfo info = m.getKey();  
                HandlerMethod method = m.getValue();  
                PatternsRequestCondition p = info.getPatternsCondition();  
                for (String url : p.getPatterns()) {  
                    map1.put("url", url);
                }  
                map1.put("className", method.getMethod().getDeclaringClass().getName()); // 类名  
                map1.put("method", method.getMethod().getName()); // 方法名 
                RequestMethodsRequestCondition methodsCondition = info.getMethodsCondition();
                for (RequestMethod requestMethod : methodsCondition.getMethods()) {
                    map1.put("type", requestMethod.toString());
                }
                
                list.add(map1);
            }
  • 相关阅读:
    C# Lambda表达式 注意对象的问题
    三步教你找回密码,成功破解压缩文件密码
    Python 构造函数
    Python 多图对比显示
    Python 同时显示多张图片 图片对比显示
    Python 自定义模块
    C#基础知识之键盘对应的键值
    C#基础知识之托管代码和非托管代码
    C#基础知识之Dictionary
    C#基础知识之属性
  • 原文地址:https://www.cnblogs.com/deityjian/p/12533302.html
Copyright © 2020-2023  润新知