[Spring5]IOC容器_底层原理

  • Post author:
  • Post category:其他




IOC的概念和原理



什么是IOC

1.控制反转,把对象创建和对象之间的调用过程,交给Spring进行管理

2.使用IOC目的:为了耦合度减低



IOC底层原理

  • xml解析
  • 工厂模式
  • 反射



底层原理示例图

在这里插入图片描述

在这里插入图片描述

目的:将耦合度降低到最低限度



IOC过程

1.xml配置文件,配置创建的对象

<bean id = "dao" class = "com.atguigu.UserDao"></bean>

2.有service类和dao类,创建工厂类

class UserFactory
{
    public static UserDao getDao()
    {
        String classValue = class属性值;//xml解析
        Class clazz = Class.forName(classValue);//通过反射创建对象
        return (UserDao)clazz.newInstance();
        
    }
}



iOC接口

1.IOC思想基于IOC容器完成,IOC容器底层就是对象工厂

2.Spring提供IOC容器实现两种方式:(两个接口)

1.BeanFactory:

a.IOC容器基本实现,是Spring内部的使用接口,不提供开发人员进行使用

b.加载配置文件的时候不会创建对象,在获取对象(使用)的时候才会去创建对象

2.ApplicationContext:

a.BeanFactory接口的子接口,提供更多更强大的功能,一般由开发人员进行使用

b.加载配置文件的时候就会把在配置文件中的对象进行创建

3.ApplicationContext接口的实现类

1.FileSystemXmlApplicationContext:绝对路径

2.ClassPathXmlApplicationContext:相对路径

在这里插入图片描述



版权声明:本文为m0_51955470原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。