在Spring没有推出之前,用Java开发项目是相当复杂和繁琐的,Spring一经推出就火了起来,给人的感觉它就像是一个保姆,什么事都帮我们打理好了,我们只需要专注业务即可。虽说Spring是一款优秀的框架,但并不代表它没有缺点。
Spring是颠覆性框架Spring是一款开源的、轻量级的DI和AOP容器框架,它是非侵入式的(创建对象也不是使用传统的new方式而是采用依懒注入方式),将对象间的依懒关系交给Spring管理,降低了系统间的耦合性,基于Spring开发的应用基本上并不依懒于Spring类。
1、明明定位是一个轻量级框架,给人的感觉却是大而全的
Spring最初定位是轻量级框架(实际上它的整体框架是很复杂的),但随着它的发展,给人的感觉是越来越复杂了。Spring本质上是围绕着Bean管理来展开的,它其实就是管理Bean的容器,然后又有了Spring MVC、JPA、Spring Cloud、Spring Boot 等,甚至有人说Spring是过度设计后的产物。
2、Spring更新太快、各种依懒包的更新影响其兼容性
不同版本的Spring对包的依懒支持是不同的,这样会导致项目依懒于特定版本的Spring,如果后期有移植需求,可能会存在兼容性问题。
3、XML配置繁琐
Spring采用XML来定义配置,说实话XML真的不适合作为配置文件格式。另外Spring项目配置要消耗很多时间而且并不统一,有时看着一堆配置头皮发麻。
但从整体上说,Spring缺点比起其优点那是微不足道的,Spring目前地位依旧无法撼动。