我参与了一个混合了以下项目的项目:
@RequestMapping(value =“ events / ...”); @RequestMapping(value =“ / events / ...”);
(在方法级别注释之前使用和不使用斜杠)。
我执行搜索:
网站:http://static.springsource.org/spring/docs/3.1.x斜线
但是这些来源都没有回答为什么跳过斜线的原因。Spring官方文档始终在示例中显示斜线…
需要指向官方文档或Spring来源。
没关系:如果路径不是以开头,/那么Spring(DefaultAnnotationHandlerMapping)将添加它。
/
参见String[] determineUrlsForHandler(String beanName)类DefaultAnnotationHandlerMapping第122行的方法(spring3.1.2)(针对类级别)
String[] determineUrlsForHandler(String beanName)
DefaultAnnotationHandlerMapping
String[] methodLevelPatterns = determineUrlsForHandlerMethods(handlerType, true); for (String typeLevelPattern : typeLevelPatterns) { if (!typeLevelPattern.startsWith("/")) { typeLevelPattern = "/" + typeLevelPattern; }
参见String[] determineUrlsForHandler(Class<?> handlerType, final boolean hasTypeLevelMapping))类DefaultAnnotationHandlerMapping线182的方法(spring3.1.2)(对于方法级别)
String[] determineUrlsForHandler(Class<?> handlerType, final boolean hasTypeLevelMapping))
String[] mappedPatterns = mapping.value(); if (mappedPatterns.length > 0) { for (String mappedPattern : mappedPatterns) { if (!hasTypeLevelMapping && !mappedPattern.startsWith("/")) { mappedPattern = "/" + mappedPattern; }