@RestController和@RequestMapping注释所采用的参数之间的差异?

时间:2018-02-20 17:33:36

标签: spring spring-boot spring-restcontroller

@RestController("/path/..")中的参数有什么作用? 它是否未将基本路径设置为@RequestMapping("/path/..")。    有什么区别?

@RestController("base-path")

3 个答案:

答案 0 :(得分:1)

如果@RestController,参数值描述了组件名称或bean名称,而在@RequestMapping中,value参数用于指定路径。两者都用于不同的目的。

如果要在控制器类名称上指定请求URI路径,请使用@RequestMapping注释@RestController。像这样:

@RequestMapping("/my-path")
@RestController
class MyController {
    ...
}

答案 1 :(得分:0)

取自Spring Documentation

  • @RestController -
  

被称为构造型注释。它为人们提供了提示   阅读代码,对于Spring,该类具有特定的功能   角色。 ...所以Spring会在处理传入的网页时考虑它   请求。

  • @RequestMapping -
  

注释提供“路由”信息。它告诉Spring   具有路径“/”的任何HTTP请求都应映射到主目录   方法。 @RestController注释告诉Spring渲染   结果字符串直接返回给调用者。

答案 2 :(得分:0)

@RequestMapping方法默认情况下采用@ResponseBody语义。 @RequestMapping是相对传统的。

@RestController将@Controller和@ResponseBody的行为结合在一起。 @RestController相对较新。