正如其英文直译一样,春天。它就是要为整个软件行业带来春天,早在2002年,便首次推出了Spring的雏形框架——interface 21。
而Spring框架又在其基础上经过重新设计并不断地丰富其内涵,终于在2004年3月24日发布了Spring 1.0正式版。这一切的一切,都离不开背后的制作者。
Rod Johnson,Spring framework创始人,著名作者。很难想象Rod Johnson的学历,属于是让人大吃一惊了属于是。他是悉尼大学的博士,然而他的专业不是计算机,竟然是音乐学。
Spring既然能夸下给整个行业带来春天的海口,那必然是有两把刷子。研究它的目的,正是为了解决企业应用开发的复杂性,而它的功能便是在Java任何应用的范围内使用Java Bean的基本结构去替换 ELB,从而提供更多的企业应用功能。
降低开发复杂性的基本需求和Java Bean结构的引入,再加上新的思维注入,便造就了Spring。
其核心理念便是让现有技术更容易使用,可以说其本身就是一锅大杂烩,整合了现有的技术框架。Spring的优点一目了然,很难看不出来:
- 免费、开源的框架(也可以称之为“容器”)
- 轻量级、非入侵
- 控制反转(IOC)、面向切面编程(AOP)的思想应用
- 支持事务的处理,对框架整合还有支持
简单总结便是:Spring是一个轻量级的控制反转(IOC)和面向切面编程(AOP)的框架。
当然也不是没有缺点,随着Spring和行业的发展,其弊端逐渐显露:发展了太久,反而违背了起初的理念。导致配置十分繁琐,人称“配置地狱”。
一点点小扩展
在Spring的官网,有这样一句话的简短介绍:现代化的Java开发。那话也说的很明白了,“现代化”意思就相当于“基于Spring”
简单介绍一下:
- Spring Boot
○ 一个快速开发的脚手架
○ 基于Spring Boot,可快速开发单个微服务
○ 约定大于配置
- Spring Cloud
○ 基于Spring Boot实现,相当于微服务的整合
大多数公司,都在使用 Spring Boot进行快速开发,学习Spring Boot的前提:需完全掌握Spring及Spring MVC。
而Spring起到的则是承上启下的重要作用。



