【发布时间】:2012-06-09 12:21:33
【问题描述】:
为了提供一些运行时生成的 API 文档,我想遍历所有 Spring MVC 控制器。所有控制器都使用 Spring @Controller 注释进行注释。目前我是这样做的:
for (final Object bean: this.context.getBeansWithAnnotation(
Controller.class).values())
{
...Generate controller documentation for the bean...
}
但此代码的第一次调用非常慢。我想知道 Spring 是否会遍历类路径中的 ALL 类,而不仅仅是检查定义的 bean。运行上述代码时,控制器已经加载,日志显示所有控制器及其请求映射,因此 Spring MVC 必须已经知道它们,并且必须有更快的方法来获取它们的列表。但是怎么做呢?
【问题讨论】:
-
我想知道你为什么需要这些信息,因为你正在做
@Controller(s) 的注释 -
他在问题中非常清楚地提到他想为那些控制器生成文档。
-
我提供的答案here也可以做到这一点。
标签: java spring spring-mvc controller