有没有办法获取@RestController
注释类中声明的所有端点的列表?有一些耐心可以通过反思实现,但有没有任何Spring内置方式?想法是在服务登录页面上显示此列表。
答案 0 :(得分:3)
所有处理程序映射的注册表都保存在requestMappingHandlerMapping bean中。您可以从Spring Boot Application的主要方法访问它。
public static void main(String[] args) {
ConfigurableApplicationContext context =
SpringApplication.run(MySpringApplication.class, args);
AbstractHandlerMethodMapping requestMappingHandlerMapping =
context.getBean("requestMappingHandlerMapping", AbstractHandlerMethodMapping.class);
Map handlerMethods = requestMappingHandlerMapping.getHandlerMethods();
System.out.println("handlerMethods: " + handlerMethods);
}
或者只是将bean自动装入你需要的任何一个Spring bean中。