[Spring5]IOC容器_底层原理

Posted 唐火

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Spring5]IOC容器_底层原理相关的知识,希望对你有一定的参考价值。

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:相对路径

以上是关于[Spring5]IOC容器_底层原理的主要内容,如果未能解决你的问题,请参考以下文章

Spring5学习——2IOC容器

Spring_11-Spring5总结

Spring | Spring5学习笔记 #yyds干货盘点#

Spring5

Spring5 框架基本概念

[Spring5]IOC容器_Bean管理XML方式_p名称空间注入