我实际上没有尝试过,但是我认为它应该起作用。
创建一个extends的新类
ControllerClassNameHandlerMapping,并覆盖该
generatePathMappings方法,以便如果控制器带有注释,
@RequestMapping则它将使用该注释的值作为路径而不是控制器的名称。
public class MyControllerClassNameHandlerMapping extends ControllerClassNameHandlerMapping { @Override protected String[] generatePathMappings(Class<?> beanClass) { if (beanClass.isAnnotationPresent(RequestMapping.class)) { RequestMapping mapping = beanClass.getAnnotation(RequestMapping.class); return mapping.value(); } return super.generatePathMappings(beanClass); }}HomeController在类别级别(而不是方法级别)使用注释您
@RequestMapping({"/", "/home"})。在 dispatcher-servlet.xml
的bean定义中,将Spring替换
ControllerClassNameHandler为
MyControllerClassNameHandler。



