1.SpringFramwork
Spring通常指的是Spring Framework。通常Java开发就是面向对象开发、面向抽象接口开发。而软件项目大多都是“堆积木”,随着版本迭代会越来越大,这造成了个很大的问题就是对象的管理。刚好Spring的控制反转,依赖注入,切面编程的特性对这些类生命周期的管理,组件模块化,基础层和业务分离解耦提供了很大的便利。就像粘合剂一样把各种功能的库“粘”到一起,让它们协同工作。
除了上图中的一些功能特性外,Spring Framework另外有个很少被提及的特点,它很少去造轮子,它只作上层的适配,作为一个中间抽象层。这种好处在于灵活,使用者可以根据场景切换技术栈;另外这成就了Spring Framework成为事实上J2EE的标准。Spring Framework已经成为Java开发必须掌握的基本框架,很多时候我们开发就是跟它打交道。
2.Spring Boot
Spring Framework经过数年的迭代已经丧失了轻量级的标签。在享受Spring Framework带来的便利的同时,我们又进入了另一个噩梦:大量的XML