4.6 小结

AOP 是面向对象编程的一个强大补充。通过 AspectJ,我们现在可以把之前分散在应用各处的行为放入可重用的模块中。我们显示地声明在何处如何应用该行为。这有效减少了代码冗余,并让我们的类关注自身的主要功能。

Spring 提供了一个 AOP 框架,让我们把切面插入到方法执行的周围。现在我们已经学会如何把通知织入前置、后置和环绕方法的调用中,以及为处理异常增加自定义的行为。

关于在 Spring 应用中如何使用切面,我们可以有多种选择。通过使用 @AspectJ 注解和简化的配置命名空间,在 Spring 中装配通知和切点变得非常简单。

最后,当 Spring AOP 不能满足需求时,我们必须转向更为强大的 AspectJ。对于这些场景,我们了解了如何使用 Spring 为 AspectJ 切面注入依赖。

此时此刻,我们已经覆盖了 Spring 框架的基础知识,了解到如何配置 Spring 容器以及如何为 Spring 管理的对象应用切面。正如我们所看到的,这些核心技术为创建松散耦合的应用奠定了坚实的基础。

现在,我们越过这些基础的内容,看一下如何使用 Spring 构建真实的应用。从下一章开始,首先看到的是如何使用 Spring 构建 Web 应用。