IOC理解


1.IOC容器的认识

  ​IOC (Inversion of Control)容器,是面向对象编程中的一种设计原则,以为“控制反转”。即将程序中创建对象的控制权交给Spring框架来管理,以便降低计算机代码之间的耦合度。
​   IOC 容器具有依赖注入功能的容器,它可以创建对象,IOC 容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。通常new一个实例,控制权由程序员控制,而"控制反转"是指new实例工作不由程序员来做而是交给Spring容器来做。

例如:现有类 A 依赖于类 B

  • 传统的开发方式 : 往往是在类 A 中手动通过 new 关键字来 new 一个 B 的对象出来
  • 使用 IoC 思想的开发方式 : 不通过 new 关键字来创建对象,而是通过 IoC 容器(Spring 框架) 来帮助我们实例化对象。我们需要哪个对象,直接从 IoC 容器里面过去即可。

2 .IOC的实现方法

​   IOC的实现方法主要有两种——依赖注入 与 依赖查找
在这里插入图片描述
(1)依赖注入
​   DI(依赖注入) IoC的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象。这一点是通过DI(Dependency Injection,依赖注入)来实现的。
​    注入注解的语法:
​   @Autowired Spring为这个变量注入一个Bean
​    @Inject 翻译为“注入”最易懂的注入注解
​    @Resource 翻译为“资源”,可以理解为Spring往里面注入的时一个资源

3.SpringBoot IoC体现

​  在Spring中,你不需要自己创建对象,你只需要告诉Spring,哪些类我需要创建出对象,然后在启动项目的时候Spring就会自动帮你创建出该对象,并且只存在一个类的实例。这个类的实例在Spring中被称为Bean。而这种模式,我们称之为“单例模式”。也就是一个类只有一个实例的意思。
  那么Spring是靠什么来了解究竟哪些类需要帮我们创建呢,这里介绍最常用的两种方式——JAVA注解配置,JAVA代码配置。之前的还有XML配置,groovy配置等,但是我们现在已经不推荐使用了。
   Spring会把注解@Controller、@Service、@Repository、@Component标注的类纳入Spring容器中进行管理。

声明注解的语法:
@Component 当前类是组件,没有明确的意思
@Service 当前类在业务逻辑层使用
@Repositorty 当前类在数据访问层使用
@Controller 当前类在展现层(MVC)使用

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值