- 2025-01-03SpringBoot启动流程
给学妹看的SpringIOC面试题(上)前段时间是校招的高峰期啊,很多学弟,学妹们出去面试的时候都会被问到一个问题,谈谈你对Spring的理解?很多同学都是会说一些IOC,AOP等,但是聊到一些细节IOC里面的细节点,就不知怎么接着和面试官怎么聊了。所以今天我就跟大家具体详细聊聊SpringIOC那些事!!!
- 2025-01-01AnnotationConfigApplicationContext流程看@Configuration,@ComponentScan,其它注解bean的注册
目录AnnotationConfigApplicationContext测试代码手动注册第1个bean:LocalConfig手动注册第2个bean:LocalConfig2refresh方法执行前技巧refresh的postProcessBeanFactory方法refresh的invokeBeanFactoryPostProcessors(beanFactory);BeanDefinitionRegistry执行所有
- 2024-12-23日常开发,spring的15个开发小技巧
1.获取spring容器的bean对象我们日常工作中,经常需要获取spring容器的bean对象,大家知道如何获取嘛?1.1实现ApplicationContextAware接口获取springbean@Servicepublic class TianLuoService implements ApplicationContextAware { private ApplicationConte
- 2024-12-22【Spring】BeanFactory和FactoryBean
转载自:https://www.cnblogs.com/Acaak/p/16938347.html BeanFactory和FactoryBean一,前言很多java开发者在使用Spring框架中都见过后缀为FactoryBean的类——xxxFactoryBean,比如Mybatis中的SqlSessionFactoryBean。说到这里就不得不提BeanFactory。FactoryBean和BeanFa
- 2024-12-21Spring源码分析之BeanFactory接口的解析
前言: 在我们的前两篇文章当中我们看完之后其实我们都会发现当我们进行相关的重要的行为的时候如我们看到的GetBean或者在Register方法的时候会出现BeanFactroy进行调用那么这个时候我们就会产生一个疑惑这个到底是什么为什么这么重要,在我没有说的时候我们从字面上进行
- 2024-12-18Spring listener执行过程
Springmvc项目通过listener初始化springIOC容器过程方法太多太深,没法一一追到位graphTD;ContextLoaderListener#contextInitialized-->ContextLoader#initWebApplicationContext-->servletContext#getAttribute(获取servletContext中的org.springframework.web.context.W
- 2024-09-26BeanFactery实现IOC,DI思想
一.三种思想(Ioc,DI,AOP)Iocinversionofcontrol,控制反转,强调的是原来在程序中创建bean的权利反转给第三方。DIdepencyinjection,依赖注入,强调的是bean之间的关系,由第三方负责设置。AOPaspectorientedprogramming,面向切面编程,功能的横向抽取,主要的实现方式就是Proxy。
- 2024-09-14Spring扩展点系列-BeanFactoryAware
文章目录简介源码分析示例代码示例一:验证BeanFactoryAware执行顺序示例二:动态获取其他bean示例三:动态bean的状态简介spring容器中Bean的生命周期内所有可扩展的点的调用顺序扩展接口实现接口ApplicationContextlnitializerinitializeAbstractApplicationCo
- 2024-09-03BeanFactory和FactoryBean
BeanFactory和FactoryBean先说结论:BeanFactory和FactoryBean都是接口。BeanFactory:是IOC容器,并且提供方法支持外部程序对这些Bean的访问,在程序启动时根据传入的参数产生各种类型的Bean,并添加到IOC容器(实现BeanFactory接口的类)的SingletonObject属性中。FactoryBean:首先是个Bea
- 2024-08-14BeanFactoryAware 在公司中的实际应用
引言首先要先了解BeanFactoryAware是什么?BeanFactoryAware是Spring框架中的一个接口,它的作用是让某个Bean能够获得对BeanFactory的引用。这意味着该Bean在初始化过程中可以访问Spring容器中所有的其他Bean。这在某些情况下非常有用,特别是当一个Bean需要在运
- 2024-08-10spring启动流程
` publicvoidrefresh()throwsBeansException,IllegalStateException{this.startupShutdownLock.lock();try{//启动关闭线程,这个线程用来表示启动当前容器使用的线程//该成员变量在之前的版本中并不存在,也是为了支持后续的并发实例化bean的情况this.startupShutdown
- 2024-08-09聚焦IOC容器刷新环节postProcessBeanFactory(BeanFactory后置处理)专项
目录一、IOC容器的刷新环节快速回顾二、postProcessBeanFactory源码展示分析(一)模版方法postProcessBeanFactory(二)AnnotationConfigServletWebServerApplicationContext调用父类的postProcessBeanFactory包扫描注解类注册(三)postProcessBeanFactory主要功能三、调用父
- 2024-08-05Spring源码(六)--BeanFactory 实现与继承关系
BeanFactory实现与继承关系这些接口和类的源码,每一个都可以看一下。ListableBeanFactory由bean工厂实现的BeanFactory接口的扩展,这些bean工厂可以枚举它们所有的bean实例,而不是按客户端请求逐个按名称进行bean查找。HierarchicalBeanFactory由bean工厂实现的子接口,可以是
- 2024-08-05spring bean生命周期中BeanNameAware、BeanFactoryAware或ApplicationContextAwar
BeanNameAware、BeanFactoryAware和ApplicationContextAware是Spring框架中提供的三个Aware接口,它们允许Bean在生命周期的特定阶段获取关于自身或容器的信息。以下是关于这三个Aware接口的详细解释:1.BeanNameAware定义与功能:BeanNameAware接口允许Bean获取自己在Spring
- 2024-08-03探究spring中如何如何从ioc中拿到对象,ioc中都存了什么
引言ApplicationContextioc=newClassPathXmlApplicationContext("beans.xml");Monstermonster01=(Monster)ioc.getBean("monster01");这是我们接触spring时接触的第一行代码,我们只是习惯性的通过ioc.getBean获取我们需要的对象,但是你有没有想过在这个a
- 2024-07-27Spring中使用到的设计模式及其源码分析
前言众所周知,Spring框架是一个强大而灵活的开发框架。这不,上次的面试刚问到这些,没防住!!!因此下来总结一下。这篇文章主要介绍Spring中使用到的设计模式,自己做个面试复盘,同时希望能帮助到其他小伙伴儿们。工厂模式相信大家面试题都背过,Spring通过工厂模式来创建和管理Bean
- 2024-07-24聚焦IOC容器刷新环节prepareBeanFactory专项
目录一、IOC容器的刷新环节快速回顾二、prepareBeanFactory源码展示分析三、设置基本属性深入分析(一)设置类加载器(二)设置表达式解析器(三)设置属性编辑器(四)设计目的分析四、忽略自动装配深入分析(一)详细分析和说明EnvironmentAwareEmbeddedValueResolverAwareResourceL