小编典典

从Spring MVC @RestController返回视图

spring-mvc

由于@RestController是组成@Controller@ResponseBody,我相信如果我想我的控制器工作既是MVC和REST控制器只是标注@RestController应该罚款。那是对的吗?

由于@RestController是组成@Controller@ResponseBody,我认为它在内部表示,这是很好的

  1. 接收http请求(由于@Controller
  2. @ResponseBody尽管可以根据需要更改以JSON格式发送响应(由于),

阅读 688

收藏
2020-06-01

共1个答案

小编典典

@RestController并不意味着用于返回要解决的视图。应该返回要写入响应主体的数据,因此包含@ResponseBody@ResponseBody@ResponseBody已经在类级别注释时,您不能有选择地禁用单个处理程序方法上的on。

您可以通过返回来解决它ModelAndView,即使在中也可以使用@RestController,但是您 实际上不应该这样做

@RequestMapping
public ModelAndView renderFooList() {
    ModelAndView mav = new ModelAndView("foo/list");
    mav.addObject("foos", fooService.getFoos());
    return mav;
}

最好为返回视图的普通处理程序创建单独的控制器,并为RESTful材质创建REST控制器。或者用普通注释类,@Controller@ResponseBody在实际需要的地方放置方法。

2020-06-01