gpt4 book ai didi

java - 如何获取Spring Controller 的监听器列表?

转载 作者:行者123 更新时间:2023-11-30 03:34:34 25 4
gpt4 key购买 nike

我想检索 Spring Controller 中所有处理程序方法的列表。我可以一一检查所有类(class),但那样需要太多时间。

最佳答案

从 3.1.SOMETHING 版本开始,Spring 提供 RequestMappingHandlerMapping bean 。该类有一个方法,它返回一个 Map ,其中包含您想要的信息:getHandlerMethods() 。该映射包含有关其键中的 @RequestMapping 注释的信息,以及有关 Controller 中与其值中的映射相匹配的方法的信息。

要使用它,您只需在 Spring MVC 应用程序的任何 bean 中 Autowiring RequestMappingHandlerMapping 实例即可:

@Configuration
public class MyConfig {

@Autowire
RequestMappingHandlerMapping mappings;

@PostConstruct // It could also be a @Bean getter, actually any method you want
void init() {
for (Entry<RequestMappingInfo, HandlerMethod> entry : this.mappings.getHandlerMethods().entrySet()) {
// do something useful with the actual mapping
}
}
}

并非针对您的问题,但 RequestMappingHandlerMapping 还提供了有关拦截器、内容协商管理器、url 映射配置等的有用信息。

关于java - 如何获取Spring Controller 的监听器列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28299377/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com