【Spring】loc和Di
Spring是什么
今天我们就来正式的学习一下Spring,首先我们得知道,这个Spring到底是什么. 用一句简单的话来讲:
包含了众多工具方法的loc容器
1.包含了很多方法这个可以理解,因为Spring就是一个框架,所以里面会自动的为我们添加了很多工具,如tomcat其实就已经内置在里面了 2.容器说明里面会放置多个loc
下面我们就来主要介绍一下Ioc
IOC和Di
Ioc的全名叫做:inversion of control ,意思是反转控制,下面是原来的状态: 也就是原来的Servlet类要依赖Dao类,需要它的某些函数和功能,所以我们可能是这样写代码的:
class Servlet{
private Dao dao=new Dao();
public Servlet(){
}
}
所以我们就需要在Servlet中依赖这封Dao类,如果我们又新创建了一个newDao,补充了一些新的功能,那么就要对这个Servlet类进行改动了 但是,如果我们反转控制一下呢?,使用引入依赖的方法,我们不再主动依赖了,而是反转一下,让依赖来主动找我们
class Servlet{
private Dao dao;
public Servlet(Dao dao){
this.dao=dao;
}
}
我们采用依赖注入(Dependency inject)的方式,注入我们需要的依赖的类就可以,就可以这样构造Servlet:
public static void main(String[] args){
Dao dao=new NewDao();
Servlet servlet=new Servlet(dao);
}
上面这个就是体现出原来被依赖的类Dao是被动的,现在它们是主动的,主动的进入Servlet函数中.
上面就是反转控制的过程,我们使用了依赖注入的方法. 其中反转控制(IOC)是思想原理,而依赖注入(DI)是我们实现的一种方式.
|