REST与Spring控制器问题

REST与Spring控制器问题,spring,rest,spring-mvc,Spring,Rest,Spring Mvc,我的剩余uri如下所示 /leagues-列出迄今为止组织的所有联盟 /leagues/{leagueName}-giveleagueName /leagues/{leagueName}/levels/-列出给定联赛的所有级别(例如季后赛、QF、SF等) 控制器 一, 二, 三, 我遇到的问题是,当我尝试(2)/leagues/levels/时,正在调用(2)/leagues/leagues/{leagueName}的控制器方法。需要有关如何解决此问题的帮助。您忘记将leguame添加到url:

我的剩余uri如下所示

  • /leagues
    -列出迄今为止组织的所有联盟
  • /leagues/{leagueName}
    -give
    leagueName
  • /leagues/{leagueName}/levels/
    -列出给定联赛的所有级别(例如季后赛、QF、SF等)
  • 控制器

    一,

    二,

    三,


    我遇到的问题是,当我尝试(2)
    /leagues/levels/
    时,正在调用(2)
    /leagues/leagues/{leagueName}
    的控制器方法。需要有关如何解决此问题的帮助。

    您忘记将leguame添加到url:请改用
    /leagues/SuperHero/levels/
    /leagues/levels/


    如果要筛选出/leagues/levels/`,则可以尝试添加其他处理程序方法:

    @RequestMapping(value="/leagues/levels/")
    

    例如,要返回任何联赛的所有级别,行为都是完美的。。。URL联盟/级别与第二个方法的RequestMapping匹配


    如果你想调用第三种方法,你需要URL作为leagues/[some string]/levels

    你能分享控制器是如何声明的吗?它的语法和请求mappings@ArunPJohny在映射处添加了mappingsLook。它无法将这条路径映射到其他任何地方。你是不是想访问
    /leagues/myleague/levels/
    也许?我认为没有框架级别的支持来过滤掉某些pathvariable值。。。因此,您可能必须在
    levels
    方法内部处理该值。如果添加此新映射,spring如何区分“/leagues/SuperHero”和“/leagues/levels”?spring是否将它们分开?
    @RequestMapping (value = "/leagues/{leagueName}", method = RequestMethod.GET)
    public String leagues(@PathVariable String leagueName, Model model)
    {
        return "/leagues/league";
    }
    
    @RequestMapping (value = "/leagues/{leagueName}/levels", method = RequestMethod.GET)
    public String levels(@PathVariable ("leagueName") String leagueName, Model model)
    {       
        return "/leagues/levels/list";
    }
    
    @RequestMapping(value="/leagues/levels/")