AdvisorAdapter源码分析

master
linlei 2024-04-08 11:48:57 +08:00
parent b6b87f6adc
commit ed84b4eadb
1 changed files with 9 additions and 0 deletions

View File

@ -288,12 +288,21 @@ bar return value : hello default value
### 九、常见问题
1. **如何实现自定义的 AdvisorAdapter**
- 我们想要实现自定义的 `AdvisorAdapter` 接口以支持特定类型的通知。在这种情况下,他们需要了解如何适配不同类型的通知到拦截器链中,并确保适配器的实现正确地处理目标方法的执行。
2. **如何注册自定义的 AdvisorAdapter**
- 一旦实现了自定义的 `AdvisorAdapter` 接口,我们需要知道如何将其注册到 Spring AOP 框架中,以便在应用中使用。这涉及到配置文件、注解或编程方式的注册。
3. **适配器的执行顺序是如何确定的?**
- 当一个目标方法被调用时,多个适配器会被调用以适配不同类型的通知。我们会关心适配器的执行顺序以确保通知被正确地应用。在 Spring AOP 中,通常使用 AdvisorAdapterRegistry 来管理适配器,并且它通常遵循注册的顺序来决定适配器的执行顺序。
4. **如何处理支持多种类型通知的适配器?**
- 有些适配器支持多种类型的通知。在这种情况下,我们需要了解如何确保适配器可以正确地识别和处理不同类型的通知,并将其适配到拦截器链中。
5. **如何处理不支持的通知类型?**
- 在某些情况下,会出现不支持的通知类型。我们需要了解如何处理这种情况,例如抛出异常或忽略不支持的通知类型。