Spring是一个开源轻量级的框架,它的核心是控制反转(IOC)和面向切面编程(AOP)。
作为业务层框架的spring能够很好地整合表现层跟持久层。
IOC:将类的创建和依赖关系写到配置文件里,可以让一个对象的依赖通过被动的注入而不是主动去new,由配置文件注入,从而实现了松耦合。
通俗点说就是:将创建对象的控制权进行转移,以前创建对象以及创建时机是自己把控的,现在把他统一交给ioc容器,专门用来创建对象的工厂,改变了原来的依赖关系,现在成为了依赖ioc容器。
ioc创建对象的3中方式:1.调用无参的构造器 2.带参数的构造器 3.工厂类创建对象
AOP:即面向切面编程,将程序中一些交叉的业务逻辑(安全,日志,事物等)封装成一个切面,然后注入到目标对象(具体的业务逻辑中去)。
分离出来单独处理 可以通过相应的类以及xml配置来实现。
优点:1.使用ioc容器,降低了耦合性,可以更专注于业务逻辑。
2.低侵入式设计,代码重用度高,易于维护。
3.跟第三方框架整合效果好。