@ControllerAdvice
注释允许我们编写适用于各种控制器的全局代码。
我的问题是:
@ControllerAdvice
仅适用于控制器级别,Spring AOP基于切入点。
除此之外,它们之间以及何时使用
@ControllerAdvice
和Spring AOP还有什么区别?
我试图实现如本示例链接所示的内容。
@ControllerAdvice
是 Spring 提供的 AOP 功能之一。用例的主要区别在于 @ControllerAdvice
由 Spring MVC 基础设施连接并使用(并提供)特定于 Web 的功能。如果您正在编写专门适用于 Web 请求的建议,例如错误处理(例如,将异常转换为企业标准 JSON 错误格式),请使用它。否则,方面就是方法。
主要区别可以从范围和用例方面来理解。 ControllerAdvice是专门针对Controller的,而SpringAOP是通用的。两者都是为交叉问题而设计的,但它们有不同的目的。 ControllerAdvice 与 SpringMVC 集成,用于异常处理,它不像传统的 AOP。