Spring是一个开源框架。框架的主要优势之一就是其分层架构。Spring的核心是控制反转(IoC)和面向切面(AOP)。简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式)轻量级开源框架。
1.IoC(控制反转)
- ioc是bean容器,控制反转,依赖注入。解耦
- 将bean标签所有的东西存入到容器中,有三种方式。set,构造器,p命名空间
- resources,autoware 等注解,可以写在方法,写在set上,我们一般写在字段上,虽然spring推荐写在set上
- byType、byName 俩种注入方式
- ioc是个bean容器,在启动的时候会把我们配置的所有bean加入到容器中,我们可以通过名字或者类型,进行依赖注入,这样的话,能极大降低我们的系统耦合度,我们所有的东西可以不依赖于实现类。在ioc启动的时候,把所有的bean都加载到bean的容器中,完成了初始化过程,有利于系统的加载。
对于Spring来说,Spring创建对象的过程,不是在代码里面实现的,而是交给Spring来进行配置实现的。
spring 就是将对象的创建权反转给(交给)Spring
2.AOP(面向切面编程 )
(1)理解
AOP技术利用一种称为"横切"的技术,剖解开封装的对象内部,并将那些影响了多个类的公共行