Spring Overview

最后编辑于 2020-05-16

Spring Overview

Spring这个词指的是什么?

Spring一词既可以指Spring Framework这个Spring系列的起源框架,也可以指Spring这整个体系。Spring Framework 提供了许多模块供不同的应用选择,比如基于ServletSpring MVC,又或是与之平行关系的Spring WebFlux

Spring的历史

Spring came into being in 2003 as a response to the complexity of the early J2EE specifications.

很多人认为Spring是J2EE的竞争对手,但Spring其实是对J2EE的补充,Spring整合了许多经过仔细挑选的J2EE规范:

Spring系列框架一直在不断进化中,在Spring Framework之上还有很多别的项目:Spring Boot, Spring Security, Spring Data, Spring Cloud, Spring Batch等等。

设计哲学

学习一个框架很重要的一点是不仅要知道它做的什么还需要知道它遵循的设计原则。Spring遵循以下原则:

  • 每一层都提供许多选择。Spring让你尽可能地推迟设计决策,解决同一个问题时可以很容易地在不同的组件中灵活的切换,直到找到满意的那一个。
  • 容纳不同的观点。Spring在同一个问题上提供多种选择,拥抱灵活性而不是"opinionated"
  • 强大的向后兼容性。
  • 注重API的设计。Spring尽力设计符合直觉的API
  • 对代码质量的高要求