Spring 概述
在学习 Spring 的时候,我们必须得有个整体性的概念。
这个概念就是:
Spring 到底是什么?
官网给了如下的介绍:
The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.
A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.
其实看了上面的介绍,你也不知道它到底能干什么,不能给你清晰的认识。
而且,关于 Spring 到底是什么?其实概念越不清晰,总的来说,就是能帮助我们更快的进行开发。
它让我们不再去做开发过程中一些重复性的劳动,而让开发者专注于业务的实现。
它就像我们以前用过的 PPT模板 一样,将样式完成,我们只需要在适当的地方,添加我们自己的内容即可。
人们也将其称为 框架。其实 框架 和 模板 的意思很接近。
广义上的 Spring
这是一张,关于 Spring 框架的图,其实你可以看到 Spring 分为很多模块,它提供不同应用场景的不同模板。
在我看来,这就是 Spring 所指的内容:
提供了开发不同场景的模板,帮我们简化了开发操作。
所以,接下来在学习 Spring 过程中,得知道,它是如何帮我们简化开发的?我们到底该怎么用这些模板?
狭义上的 Spring
我们上面看到,Spring 框架中存在不同的模块。不同的模块适用于不同的场景。
但是,我发现,在实际过程中,人们口中的 Spring 并不是这些,而是我们上面图中的某部分。
狭义上的 Spring,好像只包括上图中的 Core Container,AOP, Aspects 这些部分。
算是 Spring 这个框架的核心技术。
所以,在我看来,狭义上的 Spring 是学习 Spring 整个框架的核心技术。
Spring 的核心技术
看着上图,我们要学习的核心技术有:
Core Container:核心容器,帮助我们管理对象
AOP+Aspect:面向切面编程
这些技术我们稍后会继续介绍。
再看 Spring 那张图
我们继续再看那一张图。
其中的 Web 模块,就是我们常说的 SSM 中的 第二个 S,Spring MVC。
Data Access/ Integration,这个模块就是进行数据库交互的。
最后
说了这么多,其实就是想让你知道
- Spring 是一个框架,模板,他能帮助我们更快地进行开发
- 我们学习狭义上的 Spring,就是学习 Spring 的核心技术内容