这两个的区别其实是个很简单的问题,但是对于初学者可能遇到了会掉坑里。

    @RestController注解相当于@ResponseBody + @Controller合在一起的作用。

1、如果注解Controller使用@RestController,则Controller中的方法无法返回jsp页面,或者html,配置的视图解析器 InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容。

代码如图:

springBoot中@Controller和@RestController的区别的小坑

结果如图:

springBoot中@Controller和@RestController的区别的小坑

 

2、 如果需要返回到指定页面(jsp/html),则需要用 @Controller配合视图解析器InternalResourceViewResolver才行。

代码如图:

springBoot中@Controller和@RestController的区别的小坑

结果如图:

springBoot中@Controller和@RestController的区别的小坑
    如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。

代码如图:

springBoot中@Controller和@RestController的区别的小坑

结果如图:

springBoot中@Controller和@RestController的区别的小坑

有不周全之处,欢迎大神指点。

 

 

 

 

 

 

 

 

 

 

 

 

相关文章:

  • 2021-09-02
  • 2021-09-29
  • 2021-07-24
  • 2022-02-08
  • 2022-01-04
猜你喜欢
  • 2022-12-23
  • 2021-09-26
  • 2021-08-19
  • 2021-12-21
  • 2021-06-14
  • 2021-03-30
  • 2021-12-14
相关资源
相似解决方案