Spring的核心
DI能够让相互写作的软件组件保持松散耦合,而面向切面编程AOP允许你把遍布各处的功能分离出来形成可重用组件。
面向切面编程往往被定义为促使软件系统实现关注点的分离的一项技术。
借助AOP你可以使用各种功能层取包裹核心业务层。这些层以申明的方式灵活 的应用到系统中,你的核心应用根本不知道它的存在。这是一个非常强大的理念,可以将安全、事务和日志的关注点与核心业务逻辑相分离。
应用上下文
AnnotationConfigApplicationContext——从一个或多个基于Java的配置类中加载Spring应用上下文。
AnnotationConfigWebApplicationContext——从一个或多个基于Java的配置类中加载Spring Web应用上下文。
ClassPathXmlApplicationContext——从类路径下的一个或多个XML配置文件中加载上下文定义,把应用上下文的定义文件作为类资源。
FileSystemXMlapplicationContext——从文件系统下的一个或者多个XML配置文件中加载上下文定义。
XmlWebApplicationContext——从Web应用下的一个或者多个XML配置文件中加载上下文定义。
spring获取bean的步骤
Bean的声明周期
Spring核心容器
容器就是Spring框架最核心的部分,它管理着Spring应用中bean的创建、配置和管理。在该模块中,包括了SpringBean工厂,他为Spring提供了DI的功能。基于Bean工厂,我们还会发现多种Spring应用上下文的实现。
Spring的AOP模块
AOP可以帮助对象解耦。借助于AOP,可以将遍布系统的关注点从它们所应用的对象中解耦出来。