@RequestMapping批注中路径和值属性之间的区别
以下两个属性和何时使用哪个属性有什么区别?
@GetMapping(path = "/usr/{userId}")public String findDBUserGetMapping(@PathVariable("userId") String userId) {
return "Test User";
}
@RequestMapping(value = "/usr/{userId}", method = RequestMethod.GET)
public String findDBUserReqMapping(@PathVariable("userId") String userId) {
return "Test User";
}
回答:
如评论(和文档)所述,value
是的别名path
。Spring通常将value
元素声明为常用元素的别名。对于@RequestMapping
(和@GetMapping
,…),这是path
属性:
这是的别名
path()
。例如@RequestMapping("/foo")
等于@RequestMapping(path="/foo")
。
其背后的原因是,value
当涉及到注释时,该元素是默认元素,因此它使您可以以更简洁的方式编写代码。
其他示例包括:
@RequestParam
(value
→name
)@PathVariable
(value
→name
)- …
但是,别名不仅限于注解元素,因为如您在示例中所演示的,它@GetMapping
是的别名@RequestMapping(method =
RequestMethod.GET。
只需在他们的代码中查找的引用,AliasFor
您就可以看到他们经常这样做。
以上是 @RequestMapping批注中路径和值属性之间的区别 的全部内容, 来源链接: utcz.com/qa/433090.html