Spring(一):Spring 的创建和使用

目录

Spring 是什么?

什么是容器?

什么是 IoC?

什么是 IoC?

IoC的优点是啥呢?

理解 IoC

DI 概念说明

Spring 的创建

创建 Spring 项目

1. 创建⼀个普通 Maven 项⽬。

2. 添加 Spring 框架⽀持(spring-context、spring-beans)。

3. 添加启动类

将 bean 对象存储到 Spring(IoC)中

 将 bean 对象从 Spring(IoC)中 取出


在开始Spring的创建和使用之前先来看看Spring的基本概念

Spring 是什么?

我们通常所说的 Spring 指的是 Spring Framework(Spring 框架),它是⼀个开源框架,有着活跃⽽庞⼤的社区,这就是它之所以能⻓久不衰的原因。Spring ⽀持⼴泛的应⽤场景,它可以让 Java 企业级的应⽤程序开发起来更简单。
⽤⼀句话概括 Spring:Spring 是包含了众多⼯具⽅法的 IoC 容器。                                                  这里的众多工具体现在哪呢?这个慢慢学Spring都会介绍到。  
那问题来了,什么是容器?什么是 IoC 容器?

什么是容器?

容器就是用来装某个物体的,我们之前就有学过容器:

  • List/Map -> 数据存储容器
  • Tomcat -> Web 容器

什么是 IoC?

Spring 也是⼀个容器,Spring 是什么容器呢?Spring 是⼀个 IoC 容器

什么是 IoC?

IoC = Inversion of Control 翻译成中⽂是“控制反转”的意思,也就是说 Spring 是⼀个“控制反转”的容器,怎么理解这句话呢?

控制(权)反转,指的是:对象的生命周期的控制权(原本属于  程序员/代码片段  控制),现在交给了Spring容器控制或者是IoC 容器控制

IoC的优点是啥呢?

答:可以实现解耦合(松耦合)

我们具体来举个栗子,具体的看看IoC的实现。

我们就创建一个普通的类:

我们的需求是这样的:

  • 我们创建一辆车依赖了车的车身;
  • 这个框架又依赖着车的底盘
  • 这个底盘又依赖着车的轮胎

代码如下:

 车身依赖底盘

 底盘依赖轮胎

轮胎本身自带一个size 属性:

ok,旧的需求写到这里,我们客户现在需要自己规定轮胎大小,而不是每次都默认大小,那么从最底层 Tire 开始要进行传参 int size 

此时就开始体现了耦合性太高,假设我们又有一个需求,需要换车身颜色呢?又需要从最底层开始向上修改到最高层所有的参数。

那么如果是用IoC 容器就很好的解决了这个问题。

这就很好的进行了  解耦合。

对比总结:

在传统的代码中对象创建顺序是:Car -> Framework -> Bottom -> Tire
改进之后解耦的代码的对象创建顺序是:Tire -> Bottom -> Framework -> Car

理解 IoC

回到我们的主题 Spring,本⽂刚开始咱们就讲:Spring 是包含了多个⼯具⽅法的 IoC 容器,这就是对 Spring 最核⼼的总结。“集成多个⼯具⽅法”这事咱们以后慢慢再讲,那如何理解“Spring 是⼀个 IoC 容器”这句话呢?
既然 Spring 是⼀个 IoC(控制反转)容器,重点还在“容器”⼆字上,那么它就具备两个最基础的功
能:

  1. 将对象存
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值