【Spring core学习一】简单认识Spring是什么?

目录

1、为什么要学习Spring?

2、Spring是什么?

1、IoC是什么?

2、进一步通过代码演示理解IoC

3、怎么理解容器?

4、知道DI与IoC的区别?


1、为什么要学习Spring?

        我们常说的Spring 指的是 Spring Framework(Spring 框架),它是⼀个开源框架

为什么要学习框架?

        学习框架就相当于从一个“小作坊”到“工厂”的升级,小作坊什么都要自己做,工厂是已经将基本器件配备好了,所以使用更加方便高效。在这里,我们之前使用Servlet的方式就相当于“小作坊”,Spring就相当于“工厂”。

理解Servlet和Spring的区别?

(1)创建方式上

【Spring core学习一】简单认识Spring是什么?_第1张图片

 (2)URL地址上

【Spring core学习一】简单认识Spring是什么?_第2张图片

 (3)在新增一个路径上

【Spring core学习一】简单认识Spring是什么?_第3张图片

(4)doGet与doPost方法上  

【Spring core学习一】简单认识Spring是什么?_第4张图片

 (5)引入数据库的方式

 (6)发布项目

2、Spring是什么?

         Spring ⽀持⼴泛的应⽤场景,它可以让 Java 的应⽤程序开发起来更简单。⽤⼀句话概括 Spring:Spring 是包含了众多⼯具⽅法的 IoC 容器这里有两个词,一个是IoC,一个是容器。怎么理解呢?

1、IoC是什么?

       1、 IoC = Inversion of Control 翻译成中⽂是“控制反转”的意思,也就是说 Spring 是⼀个“控制反转”的容器。

【Spring core学习一】简单认识Spring是什么?_第5张图片

 比如:dao对象之前由A来管理,用的时候new出来,现在用Spring来管理,用的时候直接从Spring中来获取。相当于自动驾驶,之前手动开车的控制权在于司机,现在车的控制权在于自动驾驶的引擎。

【Spring core学习一】简单认识Spring是什么?_第6张图片

2、进一步通过代码演示理解IoC

IoC是一个思想,实现方式有很多。

(1)传统方式程序开发

【Spring core学习一】简单认识Spring是什么?_第7张图片

如果⾃⼰创建下级类就会出现当下级类发⽣改变操作,⾃⼰也要跟着修改。解决传统开发方式的办法就是:控制反转式程序开发,最大的特点也就是解耦

(2)控制反转式程序开发

        此时,我们只需要将原来由⾃⼰创建的下级类,改为传递的⽅式(也就是注⼊的⽅式),因为我们不需要在当前类中创建下级类了,所以下级类即使发⽣变化(创建或减少参数),当前类本身也⽆需修改任何代码,这样就完成了程序的解耦。(感受两种代码之间的区别)

【Spring core学习一】简单认识Spring是什么?_第8张图片

3、怎么理解容器?

        容器我们都知道,就是用来装东西的,比如水杯就是用来装水的,我们所学的Tomcat就是用来装web服务的。那么对于一个容器来说,就可以将一个对象存入到容器中,也可以从容器中取出该对象。因此对于Spring来说最核心的功能就是将对象存入到Spring,再从Spring中获取该对象。

【Spring core学习一】简单认识Spring是什么?_第9张图片

 所以我们主要学习Spring的存和取

        这也可以从我们上面1/2点中的代码看出:方式2中就是一个将对象存在容器中的过程:将对象存储到IoC容器中,在需要的时候直接取就好了;但是方式1是new对象的方式,每次需要的时候再new出来,下次再用的时候还要再重新做。这也就是IoC容器和普通容器的区别。

4、知道DI与IoC的区别?

IoC是一种思想,而DI是一种实现。

DI 是 Dependency Injection 的缩写,是“依赖注⼊”。

        依赖注入:就是IoC容器在运行期间,动态的将某种依赖关系注入到对象中。所以IoC与DI是从不同的角度描述同一件事,就是指通过引入IoC容器,利用依赖关系注入的方式,实现对象之间的解耦。

比如下面的代码就是依赖注入:

【Spring core学习一】简单认识Spring是什么?_第10张图片


【Spring core学习一】简单认识Spring是什么?_第11张图片

 继续学习!

你可能感兴趣的:(Spring学习,spring,学习,数据库,java,后端)