鉴于一个完全使用@RequestMapping将网址绑定到控制器的Web应用程序,我想知道是否有一种方法或插件可以生成Web应用程序的完整url-to-controller映射?
与struts.xml类似,您可以将所有网址映射到某个操作,因此您可以在中心位置查看这些信息?
否则,从屏幕上给出了一个url,每次我想查找url的控制器时,我最终都会进行java文件搜索。
答案 0 :(得分:8)
Eclipse有插件Springsource Tool Suite(您也可以单独下载):http://www.springsource.com/developer/sts您必须首先将Spring项目性质添加到您的项目中,然后切换到Java EE透视图,然后您将看到“Spring Elements”您的项目,您将看到所有请求映射(以及更多)。
编辑:STS中这样的有用功能使我从NetBeans切换到Eclipse。
答案 1 :(得分:0)
您始终可以连接DefaultAnnotationHandlerMapping并提取所有映射。类似的东西:
@Autowired
// org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping
private DefaultAnnotationHandlerMapping defaultAnnotationHandlerMapping;
public void outputMappings() {
for (Map.Entry<String, Object> entry :
defaultAnnotationHandlerMapping.getHandlerMap().entrySet()) {
System.out.println(entry.getKey() + "->" +
entry.getValue().getClass().getName());
}
}
请参阅AbstractUrlHandlerMapping.getHandlerMap()
和DefaultAnnotationHandlerMapping