获取requestmapping所有的url

Posted 土木转行的人才

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取requestmapping所有的url相关的知识,希望对你有一定的参考价值。

    /**
     * 测试接口
     * @return
     */
    @RequestMapping(value = "v1/getAllUrl")
    @ResponseBody
    public String  getAllUrl() {
        RequestMappingHandlerMapping mapping = applicationContext.getBean(RequestMappingHandlerMapping.class);
        // 获取url与类和方法的对应信息
        Map<RequestMappingInfo, HandlerMethod> map = mapping.getHandlerMethods();
        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);
        }
 
        String jsonArray = JsonUtil.objectToString(list);
 
        return jsonArray;
    }

展示效果:

以上是关于获取requestmapping所有的url的主要内容,如果未能解决你的问题,请参考以下文章

如何在spring boot中获取所有RequestMapping的URL路径列表集

使用@RequestMapping 注解时获取请求的值(URL)

如何获取SpringMVC应用中的所有映射信息

如何获取SpringMVC应用中的所有映射信息

如何获取SpringMVC应用中的所有映射信息

springmvc中@RequestMapping的使用