重学Spring框架系列之——什么是Spring框架

说在前面

Spring框架算得上是java程序员必备的一项技能了。不论是早期的SSM或SSH架构,还是现在流行的SpringBoot加SpringCloud构建的分布式、微服务架构。Spring在其中扮演着不可或缺的角色,其重要性也是不言而喻的。

为了更好的工作和自身的提升,菜鸟又重新学习了一下Spring框架,在学习的过程中也有一些收获,从而想着通过文章将自己的学习过程记录下来。也希望可以帮助到有需要的人。如果文章中存在不合理或错误的地方也希望大家可以提出来,我会及时改正,希望我们可以一起进步。

既然我们要学习Spring框架,那么首要任务肯定是先了解什么是Spring?它能做什么?它有什么优势?它凭什么备受青睐?下面就让我们一起来探索一下Spring的奥义!

Spring基本介绍

Spring框架是由Rod Johnson发起的一个轻量级开源J2EE应用程序框架。

Spring框架是一个针对Bean的生命周期进行管理的的轻量级容器。通俗点来讲Spring就是一个容器,我们的bean都放到这个容器中,让Spring来进行管理。

Spring是一个基于模块化的框架,这就导致我们可以灵活的选择是使用其一部分的功能,还是全部使用,给开发者提供了更多的选择。

Spring是积极拥抱其它框架的,它可以很好的和其它框架进行整合,而不是一门心思想要取而代之。

Spring的核心

Spring有两大核心部分分别是:IOC和AOP。

ICO就是Inversion of Control的缩写,其含义就是“控制反转”。什么是“控制反转”呢?打个比方来说:结婚前你的工资完全由你来支配,想怎么花就怎么花。结婚后变了,你的钱要上交给你媳妇了,你想花的时候得申请。此时你对工资的控制转变了,由原来的你控制,变成了你媳妇控制。这就是“控制反转”。

将这种现象体现在编程中就是:把创建对象的过程交给Spring进行管理,我不再自己动手 new对象,而是从Spring的容器中获取。

AOP就是Aspect Oriented Programming的缩写,其含义就是“面向切面编程”。这个概念就比较抽象了,它的理念就是在不修改源代码的基础上进行功能的增强。我们可以通过下图来辅助理解AOP的含义。

在这里插入图片描述

Spring的特点

1、将Bean交由Spring管理可以方便代码解耦,并且还可以简化日常开发。

2、Spring框架对AOP编程有很好的支持,这样我们可以很方便的对程序进行权限管理、日志收集、运行监控等等。

3、Spring对Junit支持,可以很方便的进行代码的测试。

4、Spring还支持声明式事务,方便进行事务相关的操作。

5、Spring对javaEE的一些API进行了封装,通过使用Spring可降低对这些API的使用难度。

6、Spring是拥抱其它框架的我们可以方便的和其他框架进行整合。

Spring整体模块图

在这里插入图片描述

模块简介

Test模块:对测试的一些相关支持。  
Core Container模块:核心容器模块,Beans和Core是对IOC容器的支持,Context是上下文(环境)相关的支持,Expression是EL表达式的功能。  
AOP和Aspects模块:由这两个模块实现了Spring的AOP相关功能。  
Instrument模块:提供了类植入支持和类加载器的实现,可以应用在特定的应用服务器中。  
Messaging模块:消息传递模块。  
DataAccess/Integration模块:该模块主要用于和数据库交互。  
Web模块:主要包含了面向web的一些功能。

Spring的获取方式

日常开发中我们可访问https://spring.io/ 来获取spring的相关知识。

在这里插入图片描述

可以通过https://repo.spring.io/release/org/springframework/spring/ 这个网址来获取spring所有版本的代码。

在这里插入图片描述

如果是想要获取Spring的maven坐标的话可以通过https://mvnrepository.com/search?q=spring这个网址来查看。

在这里插入图片描述

如果你现在使用的是SpringBoot的项目其实是无需单独配置Spring的坐标的,因为SpringBoot已经将其集成好了。

今天的分享就到这里了,如果感觉“菜鸟”写的文章还不错,记得点赞、转发加关注呦!你们的支持就是我坚持下去的动力。文章哪里写的有问题的也希望大家可以指出,我会虚心受教。

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值