首页 > 其他分享 >中通面经

中通面经

时间:2024-09-26 11:13:13浏览次数:3  
标签:初始化 启动 面经 SpringApplication 应用 中通 上下文 加载

中通面经

1、Springboot的启动流程是怎么样的?

image-20240926101402512

image-20240926102408015

new SpringApplication():

在SpringApplication的构造函数中,调用了一个initialize方法,所以他的初始化逻辑直接看这个initialize方法就行了。

image-20240926102425594

1、添加源:将提供的源(通常是配置类)添加到应用的源列表中

2、设置web环境:判断应用是否应该运行在web环境中,这会影响后续的web相关配置

3、加载初始化器:从spring.factories文件中加载所有列出的ApplicationContextInitializer实现,并将他们设置到SpringApplication实例中,以便在应用上下文的初始化阶段执行他们。

4、设置监听器:加载和设置ApplicationListener实例,以便应用能够响应不同的事件。

5、确定主应用类:确定主应用类,这个应用程序类通常是包含public static void main(String[] args)方法的类,是启动整个SpringBoot应用的入口点

这里的第三步,加载初始化器这一步是springboot的自动配置的核心,因为在这一步会从spring.factories文件中加载并实例化指定类型的类。

image-20240926103122051

image-20240926103149188

SpringApplication.run

这个方法是SpringApplication类的核心,用于启动Spring Boot应用。

image-20240926103438112

  • 启动&停止计时器
  • 获取和启动监听器
  • 装配环境参数(application.properties文件中的属性,环境变量、系统属性等)
  • 打印Banner
  • 创建应用上下文(到这一步真的开始启动了,第一步就是先要创建一个Spring的上下文出来,只有有了这个上下文才能进行Bean的加载、配置等工作)
  • 准备上下文
  • 刷新上下文(Spring启动的核心步骤,实例化所有的bean、设置他们之间的依赖关系以及执行其他的初始化任务、创建BeanFactory实例化Bean、web容器的启动)

总体框架

image-20240926104209907

标签:初始化,启动,面经,SpringApplication,应用,中通,上下文,加载
From: https://www.cnblogs.com/codingbao/p/18433069

相关文章

  • 中年被裁,记录下这段时间的心路历程,内含前端面试题和面经
    前言真正的转变都是痛苦且无声的。大家好啊,好久不见,停更了一个月了,最近确实没时间更新我的公益服游戏,这段时间我经历了工作被裁员,学习复习,面试找工作,到最终找到工作。想把这段时间我的心路历程和面试题面经分享出来,说不定可以帮到你。心路历程坐标天津,从事互联网前端开发工作,......
  • AI大模型面经之BERT和GPT的区别
    前言本篇介绍bert和gpt区别。BERT和GPT是自然语言处理(NLP)领域中的两种重要预训练语言模型,它们在多个方面存在显著的区别。以下是对BERT和GPT区别的详细分析一、模型基础与架构BERT:全称:BidirectionalEncoderRepresentationsfromTransformers。架构:基于Transformer的编码器部分进......
  • AI大模型大厂面经——LoRA面试题最全总结
    前言大家的显卡都比较吃紧,LoRA家族越来越壮大,基于LoRA出现了各种各样的改进,最近比较火的一个改进版是dora,听大家反馈口碑也不错。基于PEFT的话用409024G显存也可以进行大模型的微调,所以LoRA家族这块还是很有研究和实际落地的潜力。LoRA整个系列分为两个部分:1、LoRA总述2、LoRA家族......
  • 2024最新金三银四面经:166位粉丝面试大厂经验总结(附面试真题)
    大厂需要什么样的人?==========大厂对于非高P职位,面试标准其实很简单能干活Java基础要好最好熟悉些分布式框架相信这些标准大部分公司都差不多前段时间,帮一些粉丝进行了模拟面试,工作经验在3到5年间。不少候选人能力其实不差,但面试时没准备或不会说,这样的人可能在进......
  • 【java面经速记】Mysql和ES数据同步
    目录Mysql业务数据库ES查询数据库数据同步方案同步双写异步双写(MQ方式)基于Mysql的定时扫描同步基于Binlog实时同步使用canal监听binlog同步数据到es(流行方案)拓展:mysql的主从复制原理canal原理:数据迁移同步工具Mysql业务数据库核心特点:开源免费、高并发、稳定、......
  • 【java面经】微服务架构速记
    目录由来是什么本质和单体架构的区别适用项目开发框架SpringCloud(流行)DubboDropwizardConsul,etcd&etc(微服务的模块)由来独立系统,SOA服务切换时间长,成本高,不够稳定是什么一套小服务来开发单个应用,每个服务运行在自己的进程中,使用HTTPAPI等轻量级机制通信服务可......
  • ARM/Linux嵌入式面经(三三):大疆
    嵌入式工程师考察主要蕴含:C/C++,处理器的架构,操作系统(linux或嵌入式实时操作系统),常见硬件接口协议/总线,文件存储系统等几方面文章目录1)C/C++static作用,变量加入static以后在内存中存储位置的变化。static的作用变量加入static后在内存中存储位置的变化面试官......
  • ARM/Linux嵌入式面经(三四):CVTE
    文章目录1、C++单例模式回答C++单例模式问题2、虚函数、纯虚函数虚函数(VirtualFunctions)纯虚函数(PureVirtualFunctions)虚函数与纯虚函数的主要区别面试官可能的追问3、堆和栈区别回答堆和栈的区别面试官可能的追问怎么判断栈的大小?方法?1.......
  • 网络安全:腾讯云智、绿盟、美团、联想的面经
    《网安面试指南》http://mp.weixin.qq.com/s?__biz=MzkwNjY1Mzc0Nw==&mid=2247484339&idx=1&sn=356300f169de74e7a778b04bfbbbd0ab&chksm=c0e47aeff793f3f9a5f7abcfa57695e8944e52bca2de2c7a3eb1aecb3c1e6b9cb6abe509d51f&scene=21#wechat_redirect《Java代码审计》htt......
  • 面试面经|大模型算法岗常见面试题100道
    本文提供了一份全面的大模型算法岗位面试题清单,包括基础理论、模型结构、训练微调策略、应用框架、分布式训练和模型推理等方面的知识点,旨在帮助求职者准备相关技术面试。一、基础篇1、目前主流的开源模型体系有哪些?Transformer体系:由Google提出的Transformer模型及其......