5-微服务篇-1

简介: 本文详解SpringBoot核心机制:①自动装配原理——通过@SpringBootApplication→@EnableAutoConfiguration→AutoConfigurationImportSelector→spring.factories加载条件化配置类;②启动流程三阶段:初始化、上下文创建、自动配置;③常用起步依赖、配置文件类型(properties/YAML)及加载优先级;④四种运行方式。

01- 讲一讲SpringBoot自动装配的原理

1.在SpringBoot项目的启动引导类上都有一个注解@SpringBootApplication

这个注解是一个复合注解, 其中有三个注解构成 , 分别是

  • @SpringBootConfiguration : 是@Configuration的派生注解 , 标注当前类是一个SpringBoot的配置类
  • @ComponentScan : 开启组件扫描, 默认扫描的是当前启动引导了所在包以及子包
  • @EnableAutoConfiguration : 开启自动配置(自动配置核心注解)

2.在@EnableAutoConfiguration注解的内容使用@Import注解导入了一个AutoConfigurationImportSelector.class的类

AutoConfigurationImportSelector.class中的selectImports方法内通过一系列的方法调用, 最终需要加载类加载路径下META-INF下面的spring.factories配置文件

3.在META-INF/spring.factories配置文件中, 定义了很多的自动配置类的完全限定路径

这些配置类都会被加载

4.加载配置类之后, 会配置类或者配置方法上的@ConditionalOnXxxx条件化注解是否满足条件

如果满足条件就会从属性配置类中读取相关配置 , 执行配置类中的配置方法 , 完成自动配置

02- 讲一讲SpringBoot启动流程

springboot项目在启动的时候, 首先会执行启动引导类里面的SpringApplication.run(AdminApplication.class, args)方法

这个run方法主要做的事情可以分为三个部分 :

第一部分进行SpringApplication的初始化模块,配置一些基本的环境变量、资源、构造器、监听器

第二部分实现了应用具体的启动方案,包括启动流程的监听模块、加载配置环境模块、及核心的创建上下文环境模块

第三部分是自动化配置模块,该模块作为springboot自动配置核心,在后面的分析中会详细讨论

03- 你们常用的SpringBoot起步依赖有哪些

04- springBoot支持的配置文件有哪些 ? 加载顺序是什么样的

1 properties文件2 YAML文件 3 系统环境变量 4 命令行参数

如果有相同的配置参数, 后加载的会覆盖先加载的

05- 运行一个SpringBoot项目有哪些方式

  1. 直接使用jar -jar 运行
  2. 开发过程中运行main方法
  3. 可以配置插件 , 将springboot项目打war包, 部署到Tomcat中运行
  4. 直接用maven插件运行 maven spring-boot:run
目录
相关文章
|
3月前
|
存储 NoSQL 算法
4-Redis篇-2
本文详解Redis集群架构与核心机制:采用哨兵集群(1主2从+3哨兵)保障高可用;对比主从复制、哨兵、Cluster分片三大方案;解析主从同步的全量/增量复制流程;说明Cluster基于16384哈希槽的分片存储原理;简述MULTI/EXEC等事务命令及实际使用情况。(239字)
192 6
|
3月前
|
Linux API 数据安全/隐私保护
OpenClaw怎么部署?OpenClaw 阿里云/本地Win11/MacOS/Linux部署教程+千问/百炼Coding Plan API配置全指南
OpenClaw(曾用名Clawdbot、Moltbot)作为2026年开源AI智能体领域的标杆工具,凭借“本地优先、全场景自动化、多模型兼容”的核心优势,成为个人与轻量团队提升效率的首选。它无需复杂编程,仅通过自然语言指令,即可完成文件管理、代码生成、网页抓取、办公协同等重复性任务,所有数据可本地存储,隐私安全性拉满。其核心价值在于打破传统AI“只说不做”的局限,实现“指令输入-任务拆解-执行落地”的完整闭环。
947 10
|
3月前
|
人工智能 Linux API
【OpenClaw保姆级教程】阿里云/Win11/MacOS/Linux部署步骤+API配置+Skills使用+常见问题
2026年初,OpenClaw(昵称“小龙虾”)以黑马之姿席卷GitHub,14.5万颗星的增速创下开源项目纪录。这款由Peter Steinberger开发的AI智能体执行框架,彻底打破传统AI“被动对话”的局限,凭借“自我迭代、主动出击、随心定制”三大核心优势,让AI从“能说会道”升级为“真正会干活”——它能记住用户习惯、主动捕捉机会,甚至自我改造优化,成为无数开发者与普通用户的专属AI助手。
809 6
|
存储 Kubernetes Cloud Native
一文搞懂云原生架构
目前,每个 IT 资源或产品都作为服务提供。而且伴随云计算的滚滚浪潮,云原生(CloudNative)的概念应运而生,云原生很火,火得一塌糊涂,都0202年了,如果还不懂云原生,那真的out了。因此,云原生软件开发成为每个企业的关键要求,无论其规模和性质如何。在加入云计算潮流之前,了解什么是云原生架构以及如何为云原生应用程序需求设计正确的架构非常重要。
10913 0
一文搞懂云原生架构
|
5月前
|
人工智能 自然语言处理 供应链
深度揭秘 RPA:从录屏脚本到智能员工,它的进化之路有多惊艳?
RPA机器人是能自动处理重复性工作的“数字员工”,通过模拟人工操作,实现数据录入、报表填报等任务的自动化。它非实体、不需编程,广泛应用于金融、制造、医疗等领域,提升效率、降低错误。未来,AI赋能的RPA将更智能、普惠,推动人机协同新变革。(239字)
1264 1
|
6月前
|
人工智能 自然语言处理 供应链
电商运营需频繁跨平台操作?实在 Agent 能否实现 “一键自动化”?
RPA(机器人流程自动化)并非物理机器人,而是模拟人类操作的“数字员工”。它通过自动化重复性工作,如数据录入、报表处理等,解放人力,提升效率。从财务对账到人力资源管理,RPA已广泛应用于各行各业。随着AI加持,第三代RPA如实在Agent具备视觉识别与自然语言理解能力,实现“说句话就能干活”的智能自动化。它不是替代人类,而是让人专注创造与决策,成为数字化转型的核心力量。
375 1
|
5月前
|
人工智能 自然语言处理 监控
告别无效加班!2026 企业高效 Agent 工具 TOP5,跨系统操作零门槛
Agent工具正成为企业降本增效的核心利器。2025年全球市场规模突破2000亿美元,中国占比达40%。从电商运营到财务对账,实在智能·实在Agent凭借“一句话生成流程”、跨系统操作与自主纠错能力,实现效率飞跃,是企业智能化升级的优选方案。
944 1
|
10月前
|
缓存 安全 网络安全
0x80070002错误代码怎么解决?
以下是解决Windows系统错误代码0x80070002的多种方法,综合了高可信度来源的解决方案:
|
5月前
|
机器学习/深度学习 算法 自动驾驶
基于YOLOv8模型的行人车辆多目标检测计数与跟踪系统
本研究基于YOLOv8模型,针对智能交通与公共安全需求,开展行人车辆多目标检测、计数与跟踪技术研究。通过融合YOLOv8高精度检测与DeepSORT稳定跟踪,实现复杂场景下目标的实时定位、统计与轨迹追踪,提升交通管理效率与公共安全保障能力,推动智慧城市发展。
|
5月前
|
人工智能 自然语言处理 监控
个人 / 企业 / 科研全覆盖!2025 智能体盘点,5 款工具适配全职场需求
AI智能体正从辅助工具进化为“数字同事”,实在Agent凭借一句话生成流程、跨平台操作和高稳定性,成为企业降本增效的得力助手。本文盘点2025年5款实用智能体,助力职场人高效办公。
1163 10