1 非侵入式
即Spring框架的API不会在业务逻辑上出现,即业务是POJO。这样业务逻辑可从Spring快速移植到其他框架,与环境无关。
2 容器
Spring作为一个容器,可以管理对象的生命周期,对象与对象的依赖关系。可通过配置文件来定义对象,以及设置与其他对象的依赖关系。
3 IoC
控制反转(Inversion of Control),即创建被调用者的实例不是由调用者完成,而是由Spring容器完成,并注入调用者
当应用了IoC,一个对象依赖的其他对象会通过被动的方式传递进来,而不是这个对象自己创建或查找依赖对象。即不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它
4 AOP
面向切面的编程是一种编程思想,是面向对象的补充