没有@ResponseBody的@RestController方法工作不正确

我有以下控制器:

@RestController @RequestMapping(value = "/base/url") public class MyController { @RequestMapping( value = "/child/url", method = RequestMethod.POST ) @ResponseBody public String mmm() { return "Ok"; } } 

现在它的工作(服务器响应Ok )但我认为@ResponseBody多余的,因为我们使用@RestController并删除了@ResponseBody注释

我看到以下服务器响应:

    Error 404 Not Found   

HTTP ERROR 404

Problem accessing /base/url/child/url/Ok. Reason:

 Not Found


Powered by Jetty://

你能解释一下这种行为吗?

PS

Spring版本: 4.1.6.RELEASE

PS

我发现只有这部分与mvc配置相关:

   

为了能够使用@RestController您必须显式启用新的注释处理类。 通过添加 (对于XML)或@EnableWebMvc (对于Java Config)。

默认情况下, DispatcherServlet注册现在已弃用的AnnotationMethodHandlerAdapterDefaultAnnotationHandlerMapping ,它们可被视为前任或更新的东西。