V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yesterdaysun
V2EX  ›  Java

请教一个 Spring 的 RequestMapping 的问题

  •  
  •   yesterdaysun · 2021-04-25 11:38:16 +08:00 · 1819 次点击
    这是一个创建于 1086 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我把网站从 Spring3 升到 Spring5 了, 大体上都 OK, 就是有个小坑, 之前 dispatcher 的 url-partten 设的是*.do, 然后 Controller 里面写 RequestMapping 大概是这样的:

    @RequestMapping(value = "/task/getDetail") 或者: @RequestMapping(value = "/task/getDetail.do")

    实际上无论后面加不加那个.do, 都能访问到, 都可以匹配上自动处理, 所以代码里两种都有写, 但是到 Spring5, 前面那个写法突然就不行了, 必须要后面严格加上.do 才能匹配.

    有哪位大神知道是哪里的设置在控制这个行为吗? 还是必须只能全部明确改成加.do 才行了? 谢谢!

    4 条回复    2021-04-26 10:35:57 +08:00
    shanghai1943
        2
    shanghai1943  
       2021-04-25 12:27:43 +08:00
    其实就是在配置文件里加上 spring.mvc.pathmatch.use-suffix-pattern=true 就行了。。这样你的 controller 里的方法本来支持 /task/getDetail 访问的,加上配置后就可以支持任意后缀访问了 /task/getDetail.xxxx
    yesterdaysun
        3
    yesterdaysun  
    OP
       2021-04-25 15:20:36 +08:00
    gaius
        4
    gaius  
       2021-04-26 10:35:57 +08:00
    3-5 跨度不小哇
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   972 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 21:46 · PVG 05:46 · LAX 14:46 · JFK 17:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.