SpringIOC创建对象方式、IOC接口的核心以及ApplicationContext实现类

目录

SpringIOC

IOC容器底层实现原理

创建对象的方式

SpringIOC容器底层实现原理

IOC核心的接口

ApplicationContext主要实现类


SpringIOC

IOC容器底层实现原理

  1. IOC容器中非常核心的接口 BeanFactory
  •  BeanFactory
  •  Bean对象 Factory工厂

IOC容器基本的概念:控制反转

把对象的创建过程与使用统一都交给我们的Spring来进行原理。

不需要开发者自己去new对象

  1. IOC容器底层实现技术:反射技术、解析xml、工厂模式
  2. IOC作用 降低我们代码的耦合度。

创建对象的方式

1.单独new方式---耦合度太高了

        每次单独new对象,没有实现统一管理对象,如果后期userDao的名称信息发生变化的情况下,需要改变的引用地方比较多,耦合度太高。

2.工厂模式---降低我们耦合度

概念:统一的管理和维护我们每个对象创建与使用的过程。

不需要自己new对象。

3.反射的方式

降低代码的-耦合度


SpringIOC容器底层实现原理

反射+工厂模式+解析xml技术实现

1.使用解析xml技术 解析spring.xml配置文件;

2.获取<bean id=”” class=””/> 类的完整路径地址

3.使用到反射技术初始化对象

4.需要使用工厂模式封装初始化对象


IOC核心的接口

  1. IOC的核心思想底层基于反射+工厂模式实现
  2. Spring提供IOC容器实现两种方式:
    1. BeanFactory IOC容器基本的实现,是spring内部自己使用的接口,不提供给开发者使用。(加载配置文件过程的时候,不会创建对象,当我们在获取对象的时候才会获取创建对象。)
    2. ApplicationContext  BeanFactory 接口的子接口,提供更多的强大功能,适合于开发者使用。

当我们在加载配置文件的过程中,就会将配置文件中的对象创建。

        在做服务器端开发的时候,使用ApplicationContext 比较多,因为所有bean初始化操作在项目启动完成之前都已经初始化了。


ApplicationContext主要实现类

  • ClassPathXmlApplicationContext:对应类路径下的XML格式的配置文件
  • FileSystemXmlApplicationContext:对应文件系统中的XML格式的配置文件
  • ConfigurableApplicationContext   是ApplicationContext的子接口,包含一些扩展方法
  • refresh()和close()让ApplicationContext具有启动、关闭和刷新上下文的能力。所以要关闭ApplicationContext需要new此接口的对象调用close()方法
  • WebApplicationContext   专门为WEB应用而准备的,它允许从相对于WEB根目录的路径中完成初始化工作
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值