Spring Annotation 斜杠

Posted

技术标签:

【中文标题】Spring Annotation 斜杠【英文标题】:Spring Annotation trailing slash 【发布时间】:2011-03-01 22:04:41 【问题描述】:

我有一个带有@RequestMapping 的控制器,用于根路径"/"。还有其他控制器说@RequestMapping"/test" 等。我的应用程序似乎正确映射/appname/test 之类的路径,但如果我在路径中添加斜杠,就像"/appname/test/ 那样,它会映射到根路径为"/" 的控制器具有@RequestMapping。知道为什么吗?

更新:

我还尝试删除 <mvc:annotation-driven /> 并替换为

<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"
   p:order="0" p:alwaysUseFullPath="true" /> 
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" 
   p:alwaysUseFullPath="true"/> 

这解决了尾部斜杠问题,但我的验证停止工作

【问题讨论】:

【参考方案1】:

看起来像一个错误 (SPR-7064),在 3.0.3 中修复,应该很快就会出来。

【讨论】:

嗯,想知道宠物诊所样品的效果如何!它是用 3.0.0 构建的。我的应用在 3.0.2,也许我会回到 3.0.0 @Eqbal:或者,您可以添加更多路径映射作为解决方法。 @RequestMapping 可以采用多条路径。 这不起作用,任何带有斜杠的东西都映射到根目录。

以上是关于Spring Annotation 斜杠的主要内容,如果未能解决你的问题,请参考以下文章

面试总结

spring framework Annotation(注解)

Spring AOP:@annotation(注释)

Spring初学之annotation自动装配

Spring Annotation

spring笔记--通过注解(annotation)配置Bean