【发布时间】:2025-12-18 21:15:01
【问题描述】:
我的Spring Boot应用遇到了如下问题:
我有两个@RequestMapping:
@RequestMapping(value = "/{categorySlug:^[a-z0-9-]+$}/{slug:^[a-z0-9-]+$}")
public ModelAndView aTutorial(
@PathVariable(value = "categorySlug", required = false) String categorySlug,
@PathVariable(value = "slug") String slug) {
// (1)
}
和
@RequestMapping(value = "/questions/**")
public ModelAndView fix404() {
// (2)
}
我使用(2)将404页面重定向到主页。
但是当我去像https://w3stacks.com/questions/fix这样的网址时,我希望它(2)但它请求在(1)中处理,/questions/fix与{categorySlug)/{slug}重合。
那么在(2)上怎么做,或者说可以自定义@RequestMapping之间的优先级还是不可以呢?
谢谢。
【问题讨论】:
-
我刚刚尝试删除正则表达式
/{categorySlug}/{slug},但它保持在(1),@bureaquete
标签: spring-boot request-mapping