• Java面试之SpringBoot篇


    每日一面之Boot篇:讲一讲SpringBoot的自动装配

    面试是一个短时交流的过程,这个过程中包涵首因效应的管理,晕轮效应的管理,如何做好面试管理对求职者至关重要。作为Java的学者,面试题是面试官考量我们的一个基本标准,尤其是对于没有实际项目经验的大学生,本专栏专门针对一切比较常见的问题做出整理,欢迎各位投稿、订阅本专栏,每日分享一个面试小技巧和一篇面试题,细水长流,大家一起加油。

    面试技巧:管住自己的嘴巴,三思而后答
    切记面试的问题每一个都不要问了就直接答复,稍作停留,整理思路,
    该答复的答复,不是问题的点不要轻易涉及,除非你对此很熟悉
    
    • 1
    • 2

    面试官:讲一讲SpringBoot的自动装配吧

    沉思后答:

    嗯。。。。。
    SpringBoot 里面的自动装配,简单来说就是自动把第三方组件的Bean装载到Spring IOC容器里面,而不需要开发人员再去专门写Bean的装配配置。
    '在SpringBoot里面,只需要再启动类加上@SpringBootApplication注解就可以实现自动装配'
     而SpringBoot是一个复合型的注解,真正实现装配的是@EnableAutoConfiguration
    
    • 1
    • 2
    • 3
    • 4

    image-20230913112430330

    @EnableAutoConfiguration实现自动装配呢,主要依靠三个核心的关键技术
    1、引入Starter启动依赖组建的时候呢,这个组件必须包含@Configuration配置类,在这个配置类里面通过@Bean注解声明需要装配到IOC容器的Bean对象
    2、这个配置类是放在第三方Jar包里面的,然后通过SpringBoot约定大于配置的思想,把这个配置类的全路径放在了classpath:/MATE-INF/spring.factories文件中。这样的话Spring就知道第三方Jar包里面配置类的位置,而这个过程呢,主要是通过Spring里面的SpringFactoryLoader来完成的。
    3、SpringBoot拿到了第三方jar文件里面生命的配置类有以后呢,在通过Spring的ImportSelector接口,来实现对这个配置类的动态加载。
    
    • 1
    • 2
    • 3
    • 4

    其实,SpringBoot就是约定大于配置这一设计理念下的产物,所以在里面会有很多地方都可以看到这类思想的实现。而这类设计理念,可以让我们开发人员更专注于核心业务代码的编写,而不用去关注那些只做一次的与业务无关的配置。

    而且,自动装配的思想在SpringFramework3.x的版本里面,就已经有了实现的雏形,就是@Enable注解。Enable注解是模块驱动的意思,我们只需要增加某个@Enable注解就能自动打开某个功能,而不需要去针对这个功能去做Bean的配置,@Enable底层也是帮我们去自动完成这个模块相关Bean的注入。

    以上呢,就是我对Spring Boot 自动装配机制的理解。

    其实我们让面试官知道的,不是我们对于问题答复的多少,而是我们对于这个技术领域理解的深度和自己的见解,从而让面试官在一大堆求职者中,对我们产生清晰的印象,平时我们在背诵八股文的时候,也不要只是会刻板的记忆,尝试跟身边的朋友或对着镜子自己讲解几遍,就能产生自己的话术去描述去回答问题。

  • 相关阅读:
    React基础: 项目创建 && JSX 基础语法 && React基础的组件使用 && useState状态 && 基础样式控制
    ChatGPT 超有用提示词 练习雅思口语
    vue3 实现pdf预览
    带你了解MySQL数据库(二)
    计算机网络学习笔记——运输层(b站)
    学习与尝试 --> 事件风暴
    《互联网的世界》第三讲-tcp
    【ELM】动态自适应可变加权极限学习机ELM预测(Matlab代码实现)
    Android Animation的使用
    [附源码]计算机毕业设计springboot吾悦商城管理系统
  • 原文地址:https://blog.csdn.net/m0_51724241/article/details/132856709