Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过将子路径映射到其他控制器来拆分Spring控制器_Java_Spring_Spring Mvc - Fatal编程技术网

Java 通过将子路径映射到其他控制器来拆分Spring控制器

Java 通过将子路径映射到其他控制器来拆分Spring控制器,java,spring,spring-mvc,Java,Spring,Spring Mvc,我正在尝试拆分一个已变得相当臃肿的spring控制器。主控制器FooController映射到“/foo”。随着FooController的发展,出现了几个到子映射“/foo/bar/”的处理程序。感觉这些“/foo/bar”调用应该由不同的控制器处理,因为添加了所有功能 我正在使用spring 4,下面是一个代码示例,说明我正在尝试做的事情: @Controller @RequestMapping(value="/foo/") public class FooController { //

我正在尝试拆分一个已变得相当臃肿的spring控制器。主控制器FooController映射到“/foo”。随着FooController的发展,出现了几个到子映射“/foo/bar/”的处理程序。感觉这些“/foo/bar”调用应该由不同的控制器处理,因为添加了所有功能

我正在使用spring 4,下面是一个代码示例,说明我正在尝试做的事情:

@Controller
@RequestMapping(value="/foo/")
public class FooController { 
// ...
}

@Controller
@RequestMapping(value="/foo/bar"")
public class BarController {
// ...
}
我无法接收到对/foo/bar/的请求。这在春天是不可能的,还是我错过了什么

我已经设置了SpringServlet,以便能够扫描BarController


由于移动客户端的向后兼容性问题,我不能简单地添加映射到“bar/”的BarController。我当然可以在将来的API中这样做,但如果可能的话,我希望将所有API组合在一起。

您可以在同一个FooController中嵌套URL

@Controller
@RequestMapping(value="/foo")
public class FooController { 

    @RequestMapping(value = {"/bar"}, method = {RequestMethod.POST})
    public ModelAndView someOperation(....){

    }
}

您可以在同一个FooController中嵌套URL

@Controller
@RequestMapping(value="/foo")
public class FooController { 

    @RequestMapping(value = {"/bar"}, method = {RequestMethod.POST})
    public ModelAndView someOperation(....){

    }
}

能否将web.xml中的请求映射添加到上面的代码中?能否将web.xml中的请求映射添加到上面的代码中?