SpringBoot高频面试题

2023最新版(持续更新)

  • SpringBoot高频面试题
    • 1. SpringBoot的自动配置原理
    • 1. SpringBoot的常见注解有哪些?

SpringBoot高频面试题

1. SpringBoot的自动配置原理

前置知识
SpringBoot中,在启动类上的@SpringBootApplication注解中的@EnableAutoConfiguration注解是实现自动配置的核心注解
在这里插入图片描述
在这里插入图片描述
面试时的回答:
1.在SpringBoot项目的启动类上有一个@SpringBootApplication注解,他是一个组合注解,内组合了三个注解,分别是

  • @SpringBootConfiguration,这个注解说明了当前类是一个配置类;
  • @ ComponentScan,包扫描注解
  • @EnableAutoConfiguration
    2.其中@EnableAutoConfiguration是实现自动化配置的核心注解,通过该注解上的@Import注解导入对应的配置选择器,内部就是读取了该项目/该项目引用Jar包的classpath路径下META-INF/spring.factories文件中的所配置的类的全类名。在这些配置类中所定义的Bean会根据条件注解所指定的条件来决定是否需要将其导入到Spring容器当中。
    3.条件判断会有像@ConditionalOnClass这样的注解,判断是否有对应的calss文件,如果有则加载该类,把配置类中所有的bean放入到Spring容器中使用。另外在配置类配置的bean也会通过@ConditionalOnClass注解去判断容器中是否已经存在了该bean,如果存在则不会再将该bean放入到容器。

1. SpringBoot的常见注解有哪些?

看下表着说就行,或者还可以加上@SpringBootApplication结合来说

注解说明
@SpringBootApplication组合注解,内部包含一下三个注解
@SpringBootConfiguration组合了@Configuration,实现了配置文件的功能
@EnableConfiguration开启/关闭自动配置的功能
@ComponentScanSpring组件扫描

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/19096.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java.lang.UnsatisfiedLinkError: no opencv_java410 in java.library.path

-Djava.library.pathhome/zwf/eclipse-workspace/DIPS_YTPC/lib/opencv-410/x64/

机器学习总览

机器学习 1.什么是机器学习?2.机器学习的应用3.怎么实现机器学习?1、NumPy库2.Matplotlib库1.什么是机器学习? 机器学习是使计算机像人类一样学习与行动的科学,并通过观察与现实世界交互的形式向计算机提供数据和信息,从而随着时间的推移以自主的方式改善其学习。通过经验…

分布式负载均衡 Ribbon

一、Ribbon简介 是Netfix发布的负载均衡,Eureka一般配合Ribbon进行使用,基于HTTP和TCP的客户端负载均衡工具。 只有负载均衡的能力,不具有发送请求的能力,要配合服务通信组件。 RestTemplate 针对各种类型的 HTTP 请求都提供了相…

zookeeper单机安装

1 检查环境jdk 参考:https://blog.csdn.net/weixin_44098426/article/details/128446376 2 解压安装包 mkdir -p /opt/zookeeper mv /home/wh/software/zk/apache-zookeeper-3.5.7-bin.tar.gz /opt/zookeeper tar -xzvf apache-zookeeper-3.5.7-bin.tar.gz 3 配置…

掌握这些写简历投简历的“黑魔法”,告别简历已读不回!

“哎,我还能找到工作吗?” 这是最近加我微信的好友,问的最多的一句话。 太卷了 最近加我微信的朋友很多,我都很奇怪,最近也没怎么发文章,怎么会有这么多人加我。 大概就是因为太卷了,之前写的…

[工业互联-14]:机器人操作系统ROS与ROS2是如何提升实时性的?

目录 第1章 简介 第2章 历史 第3章 特点 (1)点对点设计 (2)不依赖编程语言 (3)精简与集成 (4)便于测试 (5)开源 (6)强大的库及…

TexSpire-比markdown更为简洁的文本标记语言,用文字即可生成演示效果

文章目录 一、前言二、语言特点三、举例1、文本框2、表格3、折线图4、思维导图 四、相关资料 一、前言 老实说,本人对于ppt的花里胡哨深恶痛绝,特别是每一次汇报,都需要花费我很多时间去找模板,去设计,去美化内容时&a…

Vue3挂载全局方法及组件中如何使用

文章目录 前言一、在mian.ts(mian.js)中配置全局变量1、如何封装 二、如何调用1.template中调用2.在script标签中如何拿到 前言 在Vue3项目中,需要频繁使用某一个方法。配置到全局感觉会方便很多。 例如:因为很多页面都需要对时…

ASCII码对照表 十六进制的字符对照表

ASCII码对照表(包括二进制、十进制十六进制和字符) 可以显示 不可以显示

如何用爬虫实现GPT功能

如何用爬虫实现GPT功能? GPT(Generative Pre-trained Transformer)和爬虫是两个完全不同的概念和技术。GPT是一种基于Transformer模型的自然语言处理模型,用于生成文本,而爬虫是一种用于从互联网上收集数据的技术。 …

【微服务】搭建项目以及子模块

目录 方法一:搭建远程仓库新建idea 项目创建子模块创建父模块的pom父模块的gitignore文件修改查看远程代码仓库 方法二 方法一: 搭建远程仓库 选择 下载地址 新建idea 项目 复制 项目远程仓库的下载地址 下载完成 创建子模块 导入微服务的必要组件…

JavaScrpt_11 Web API 事件流、委托事件、其它事件、元素尺寸与位置

JavaScrpt_11 Web API 事件流、委托事件、其它事件、元素尺寸与位置 前言一、事件流1. 捕获和冒泡2. 阻止冒泡 二、委托事件三、其它事件1. 页面加载事件 2. 元素滚动事件 3. 页面尺寸事件 四、元素尺寸与位置 前言 进一步学习 事件进阶,实现更多交互的网页特效&…