什么是Spring
Spring是一个轻量级控制反转(IOC)和面向切面(AOP)的容器框架
Spring是轻量级的开源的JavaEE框架
轻量级:体积很小,里面的jar包比较少,也比较小,它可以独立提供使用,这叫做轻量级
开源:免费提供源代码
框架:解决企业应用开发的复杂性
Spring的两个核心部分:IOC和AOP
(1)IOC:控制反转,把创建对象过程交给spring进行管理,不需要再用new方式,spring来创建对象,并进行对象的实例化,总的来说就是创建对象和管理对象
(2)AOP:面向切面编程,不修改源代码的情况下进行功能增强
Spring的特点:
- 方便解耦,简化开发,高内聚低耦合
- AOP编程支持
- 方便程序的测试
- 方便和其他框架进行整合,比如MyBatis等等
- 方便进行事务的操作
- 降低API的开发难度
Spring的优点
- Spring是一个开源的免费的框架(容器)!
- Spring是一个轻量级的、非入侵式的框架!
- 控制反转(IOC),面向切面编程(AOP) !
- 支持事务的处理,对框架整合的支持!
非入侵式:
你引入的spring不会改变你代码原来的任何情况,项目集成spring后,不会对原来项目产生影响
spring理念:使现有的技术更加容易使用,本身是一个大杂烩,整合了现有的技术框架!
弊端:发展太久之后,违背了原来的理念!配置十分繁琐