像GetMapping这样的SpringBoot注释是否在内部使用SpringAOP?

像GetMapping这样的SpringBoot注释是否在内部使用SpringAOP?,spring,spring-boot,aop,spring-aop,Spring,Spring Boot,Aop,Spring Aop,一个可能是愚蠢的问题从一个春季开机初学者 我正在阅读有关AOP的资料,感觉许多注释(包括GetMapping和PostMapping)的处理自然地符合AOP——我们有一个共同的问题(比如,所有用GetMapping注释的函数都被视为HTTP GET方法),它们分布在许多不同的类上 Spring是否在内部使用AOP来实现它的处理程序,比如GetMapping?不,Spring没有使用AOP来为请求的URI找到正确的处理程序 这基本上是的工作 @GetMapping,@PostMapping,@Pu

一个可能是愚蠢的问题从一个春季开机初学者

我正在阅读有关AOP的资料,感觉许多注释(包括
GetMapping
PostMapping
)的处理自然地符合AOP——我们有一个共同的问题(比如,所有用
GetMapping
注释的函数都被视为HTTP GET方法),它们分布在许多不同的类上


Spring是否在内部使用AOP来实现它的处理程序,比如
GetMapping

不,Spring没有使用AOP来为请求的URI找到正确的处理程序

这基本上是的工作

@GetMapping
@PostMapping
@PutMapping
@PatchMapping
@DeleteMapping
都是各自注释的快捷方式

DispatcherServlet
是一个前端控制器,用于处理传入请求并将其委托给正确的处理程序

当请求到达时,
DispatcherServlet
WebApplicationContext
使用
HandlerMapping
s和
HandlerAdapter
s将请求委托给相应的处理程序。当然,这要复杂得多,而且还有很多工程在进行

DispatcherServlet
不直接调用handler方法,而是使用
handleAdapter
接口。具体来说,在
@RequestMapping
注释及其快捷方式的情况下,与一起使用

DispatcherServlet
使用
RequestMappingHandlerMapping
获取处理程序对象(在类中而不是方法中使用
@RequestMapping
时)和处理程序方法(在方法中使用
@RequestMapping
及其快捷方式时)。这个类负责为每个
@RequestMapping
注释类或方法创建,因此,基本上,它将相应的处理程序映射到它的路径

RequestMappingHandlerAdapter
用于通过
RequestMappingHandlerAdapter\invokeHandlerMethod
调用处理程序方法(请参见

所以不,Spring在这种情况下不使用AOP。有很多智能地图正在进行中