> For the complete documentation index, see [llms.txt](https://potoyang.gitbook.io/spring-in-action-v4/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://potoyang.gitbook.io/spring-in-action-v4/di-1-bu-fen-spring-de-he-xin.md).

# 第一部分　Spring 的核心

Spring 可以做很多事情，它为企业级开发提供给了丰富的功能，但是这些功能的底层都依赖于它的两个核心特性，也就是依赖注入（dependency injection，DI）和面向切面编程（aspect-oriented programming，AOP）。

作为本书的开始，在 **第 1 章 Spring 之旅** 中，我将快速介绍一下 Spring 框架，包括 Spring DI和 AOP 的概况，以及它们是如何帮助读者解耦应用组件的。

在 **第 2 章 装配Bean** 中，我们将深入探讨如何将应用中的各个组件拼装在一起，读者将会看到 Spring 所提供的自动配置、基于 Java 的配置以及 XML 配置。

在 **第 3 章 高级装配** 中，将会告别基础的内容，为读者展现一些最大化 Spring 威力的技巧和技术，包括条件化装配、处理自动装配时的歧义性、作用域以及 Spring 表达式语言。

在 **第 4 章 面向切面的 Spring** 中，展示如何使用 Spring 的 AOP 特性把系统级的服务（例如安全和审计）从它们所服务的对象中解耦出来。本章也为后面的第 9 章、第 13 章和第 14 章做了铺垫，这几章将会分别介绍如何将 Spring AOP 用于声明式安全以及缓存。
