当前位置: 首页 > news >正文

spring知识点复习--针对面试的

前言

 此内容是笔者通过B站的视频总结而来。原视频链接地址:6、Bean Factory与FactoryBean有什么区别_哔哩哔哩_bilibili

1.谈谈springIOC的理解,原理与实现

回答涉及到的点:

   控制反转:是一种理论思想,原来的对象是由使用者来进行控制的,有了spring之后,可以把整个对象交给spring来帮助我们进行管理的。

   DI:依赖注入,把对应的属性值注入到具体的对象中,在spring的应用:@Autowired,populateBean完成属性值的注入。

源码非常熟悉的时候的回答要涉及的点:

容器:具体存放对象,使用map结构来进行存储的,在spring中一般存在三级缓存,singletonObject存放完成的bean对象,我们一般取对象都会从singletonObject中进行获取。整个bean的生命周期,从创建到销毁的过程,都是由容器来进行管理的,这里可以引出一个bean的生命周期。

1.容器的创建过程,(容器最上层是一个根接口BeanFactory,实际我们用的最多的就是DefaultListableBeanFactory )向beanFactory中进行设置一些参数(BeanPostProcessor,Aware接口的子类)等等属性。

2.加载解析bean对象,准备创建bean对象的定义对象beanDefintion(xml或者注解的解析过程)

3.beanFactoryPostProcessor的处理,这里spring 提供了很多得扩展点,例如,处理占位符得PlaceHolderConfigurationSupport,ConfigurationClassPostProcessor

4,beanFactoryPostProcessor的的注册功能,方便后续对bean对象进行完成的具体的扩展功能

5.通过反射的方式将BeanDefinition对象实例化成具体的bean对象

6.bean对象的初始化过程(填充属性,调用aw


http://www.mrgr.cn/news/78743.html

相关文章:

  • Python学习38天
  • sheng的学习笔记-【中】【吴恩达课后测验】Course 5 -序列模型 - 第二周测验 - 自然语言处理与词嵌入
  • Goland或Idea启动报错
  • 算法基础 - 求解非线性方程(牛顿法)
  • MySQL【11】事务
  • 解锁软件构建的艺术:六种架构模式的解析
  • 计算机基础 原码反码补码问题
  • sizeof和strlen区分,(好多例子)
  • 【Python中while循环】
  • Python的字符串编码
  • 二十一、QT C++
  • 从扩散模型开始的生成模型范式演变--SDE(1)
  • 异步处理优化:多线程线程池与消息队列的选择与应用
  • java面试复习
  • MATLAB期末复习笔记(上)
  • 网络地址转换
  • 阿里云服务器(centos7.6)部署前后端分离项目(MAC环境)
  • winScp连接Ubantu系统,访问拒绝的解决方式
  • 【超全总结】深度学习分割模型的损失函数类别及应用场景
  • 小米澎湃OS2跟蜂窝网络相关的设置和调试【功能设计】
  • HTTP 探秘之旅:从入门到未来
  • 泛化调用 :在没有接口的情况下进行RPC调用
  • rocketmq windows环境部署
  • LearnOpenGL学习(入门--变换,坐标系统,摄像机)
  • 字符串,栈的算法题
  • 继承错题汇总