springboot项目中获取所有requestmapping的
2019-11-05 本文已影响0人
不知不怪
@Autowired
private WebApplicationContext applicationContext;
@PostConstruct
public void urls() {
RequestMappingHandlerMapping mapping = applicationContext.getBean(RequestMappingHandlerMapping.class);
// 获取url与类和方法的对应信息
Map<RequestMappingInfo, HandlerMethod> map = mapping.getHandlerMethods();
for (RequestMappingInfo info : map.keySet()) {
// 获取url的Set集合,一个方法可能对应多个url
Set<String> patterns = info.getPatternsCondition().getPatterns();
for (String url : patterns) {
// 把结果存入静态变量中程序运行一次次方法之后就不用再次请求次方法
log.info(url);
}
}
}