SpringMVC小扎

spring框架

当初在学校的时候听到ssh框架觉得高大上,什么依赖注入,控制反转啥的听得人一愣一愣的。那什么是控制反转和依赖注入呢?

依赖注入(DI)

所谓的依赖注入,则是通过springmvc来管理外部对象的资源。这里把角色分为对象、对象需要的外部资源、DI容器。
依赖注入,则是指对象依赖DI容器向其注入对象所需的外部资源。

控制反转(IOC)

在反转这个概念前,需要知道什么值正转。一般情况,当我们需要在A对象中使用C对象的方法时,一般是主动实例化C的对象;而控制反转则是A中不主动去创建C的实例,而是被动等待着IOC容器获取一个C的实例,并且向A中注入。

public class A{
    B b = null;
    public void setB(B b){
        this.b = b;
    }
    public void test(){
        b.useBmethod(){};
    }
}

这就是依赖注入和控制反转。

小结

依赖注入和控制反转是从不同的角度来描述了程序的方面。
依赖注入是从应用程序的角度在描述,程序依赖DI容器创建并向程序中添加外部资源,而控制反转则是从容器的角度来解释,IOC容器控制程序,由IOC容器反向的向应用程序注入外部资源,而不是程序主动去请求资源。
这个思想实际上并未影响程序代码,而是将设计上颠倒了主仆。一般的程序都是程序主动创建对象请求资源,但是从IOC/DI中,程序则是变成了被动接受资源的过程。
但是这个有什么用呢?控制反转和依赖注入,我认为其实是简化了程序的耦合度,将资源的请求交给容器来处理,是整个程序的结构变得比之前灵活松散。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值