spring mvc 获取所有的controller中的url

原创 2016年03月07日 13:26:51
spring mvc 获取所有的controller中的url

原理:


从WebApplicationContext中获取RequestMappingHandlerMapping.class类型的所有bean.


代码如下:


在web.xml中增加:

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:spring.xml</param-value>
    </context-param>

    <listener>
        <listener-class> org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

新增ControllerReflect

@Controller
@RequestMapping("/controllerReflect")
public class ControllerReflect {
    @ResponseBody
    @RequestMapping("getUrlMapping")
    public Object getUrlMapping(HttpServletRequest request) {
        WebApplicationContext wc = WebApplicationContextUtils.getRequiredWebApplicationContext(request.getSession().getServletContext());
        RequestMappingHandlerMapping rmhp = wc.getBean(RequestMappingHandlerMapping.class);
        Map<RequestMappingInfo, HandlerMethod> map = rmhp.getHandlerMethods();
        for(RequestMappingInfo info : map.keySet()){
            System.out.println(info.getPatternsCondition().toString()
                    + ","
                    +map.get(info).getBean().toString());
        }
        return null;
    }
}


获取RequestMapping所有的方法和路径|SpringMvc的Controller

  • 2016年05月16日 09:44
  • 3KB
  • 下载

SpringMVC项目中获取所有URL到Controller Method的映射

package com.wsn.controller; import com.wsn.entity.AuthUser; import com.wsn.exception.BusinessExcept...
  • zengfanwei1990
  • zengfanwei1990
  • 2017年05月23日 15:50
  • 950

SpringMVC Interceptor中通过Request获取Controller方法

刚好遇到这个问题,找到了大牛的博客学习记录一下不是原创背景:项目使用spring 3.1.0.RELEASE,从dao到Controller层全部是基于注解配置。我的需求是想在自定义的Spring拦截...
  • qq_21508635
  • qq_21508635
  • 2016年05月17日 11:25
  • 5447

Spring自定义注解实现Controller对象获取

Spring原生提供 @RequestBody用于将客户端传递的Json对象转化为Java Object。 所依赖的就是RequestMappingHandlerAdapter。 它已经被集成在 之中...
  • qyp199312
  • qyp199312
  • 2015年01月30日 16:46
  • 3166

详解SpringMVC请求的时候是如何找到正确的Controller

目录 前言源码分析 重要接口介绍SpringMVC初始化的时候做了什么HandlerExecutionChain的获取 实例资源文件映射总结参考资料 前言 ...
  • JIESA
  • JIESA
  • 2017年02月06日 19:04
  • 3279

SpringMVC使用注解完成 URL 和 Controller & 方法之间的映射细节

1. 使用 @RequestMapping 来进行 URL 和 类 及 方法之间的映照。 2. @RequestMapping 注解可以标识到类上面,也能够标识到方法上      1). ...
  • chuang123
  • chuang123
  • 2016年12月14日 21:40
  • 1596

springMVC一个Controller处理所有用户请求的并发问题

springMVC一个Controller处理所有用户请求的并发问题 有状态和无状态的对象基本概念:  有状态对象(Stateful Bean),就是有实例变量的对象 ,可以保存数据,是非...
  • u010523770
  • u010523770
  • 2016年09月07日 11:57
  • 15798

初识Spring-MVC之Controller的URL的映射规则注解版

Spring-MVC也是一种基于请求驱动的WEB框架,并且使用了前端控制器的设计模式。前端控制器就是DispatcherServlet控制器,只要满足web.xml文件中的【url-pattern】的...
  • cw_hello1
  • cw_hello1
  • 2016年05月05日 17:50
  • 6202

Spring MVC获取所有注册的url

本文的目的是获取所有通过requestMapping注册的url @RequestMapping("getAllUrl") ...
  • aitcax
  • aitcax
  • 2017年01月05日 09:51
  • 1392

获取SpringMVC中所有RequestMapping映射URL地址

废话不多说,直接上代码:public String init(HttpServletRequest request, HttpServletResponse response){ List uLis...
  • A123638
  • A123638
  • 2016年10月24日 10:24
  • 3663
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spring mvc 获取所有的controller中的url
举报原因:
原因补充:

(最多只允许输入30个字)