Spring 几大核心功能
- IoC/DI (控制反转/依赖注入)
- AOP (面向切面编程)
- 声明式事务
Spring 框架 runtime
![](https://i-blog.csdnimg.cn/blog_migrate/ad6173118bb22286b1304464cbde4e0f.png)
- test: spring 提供测试功能
- Core Container:核心容器(Spring 启动最基本的条件)
2.1 Beans : Spring 负责创建类对象并管理对象
2.2 Core: 核心类
2.3 Context: 上下文参数,获取外部资源或者管理注解等
2.4 SpringEl: expression.jar - AOP: 实现 aop 功能需要依赖
- Aspects: 切面 AOP 依赖的包
- Data Access/Integration: spring 封装数据访问层相关内容
5.1 JDBC:Spring 对 JDBC 封装后的代码
5.2 ORM:封装了持久层框架的代码, 例如 Hibernate
5.3 transactions:对应 spring-tx.jar,声明式事务使用 - WEB:需要 spring 完成 web 相关功能时需要
6.1 例如:由 tomcat 加载 spring 配置文件时需要有 spring-web 包
PS: 从 Spring3 开始把 Spring 框架的功能拆分成多个 jar,Spring2 及以前就一个 jar
Spring 框架中重要概念
- 容器(Container): Spring 当作一个大容器
- BeanFactory 接口(老版本)
2.1 新版本中 ApplicationContext 接口是 BeanFactory 的子接口,BeanFactory 的功能在 ApplicationContext 中都有