Spring框架最核心的功能之一是它的IoC(Inversion of Control,控制反转)容器,它负责管理和维护应用程序中对象的生命周期和依赖关系。IoC背后的思想是将对象之间的依赖关系交由容器来管理,从而到达解耦的目标。依赖注入(Dependency Injection,DI)是实现IoC的具体方式之一。
依赖注入的工作原理是,在容器初始化时,根据配置文件或注解信息创建对象,并根据声明将对象的依赖注入到相应的属性中。容器完全控制对象的创建和依赖关系的建立,对象只需关注业务逻辑的实现。这种做法提高了组件的重用性,并且有助于单元测试。