[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f1b300lqgtfmoj":3,"$f250wz8h39yydc":8,"$f2sjsm7earac5z":29,"$fh8iy32231rt":33,"$f7odxhiv8ygn1":44,"toc-389425571-5-5":48},{"description":4,"domain":5,"id":6,"keywords":4,"title":7},"","api.kongjs.com",1,"默认",[9,20,24],{"children":10,"icon":4,"id":11,"linkType":12,"linkUrl":13,"parentId":14,"sort":15,"status":16,"target":17,"title":18,"visible":19},null,"447369447469600768","URL","\u002F","0",0,"1","_self","首页",true,{"children":10,"icon":4,"id":21,"linkType":12,"linkUrl":22,"parentId":14,"sort":15,"status":16,"target":17,"title":23,"visible":19},"447369693859794944","\u002Fnotes","笔记",{"children":10,"icon":4,"id":25,"linkType":26,"linkUrl":27,"parentId":14,"sort":15,"status":16,"target":17,"title":28,"visible":19},"447369977960976384","PAGE","\u002Fabout","关于我",{"category":10,"categoryId":10,"cover":10,"description":4,"fileId":10,"id":30,"publishAt":10,"tags":31,"title":32},"453169352129126400",[],"Spring面试核心知识",[34,37,40],{"children":10,"description":4,"id":35,"noteId":30,"parentId":14,"sort":15,"status":16,"title":36},"453169498883629056","Spring IOC、Bean注入、循环依赖、AOP、动态代理完整原理",{"children":10,"description":4,"id":38,"noteId":30,"parentId":14,"sort":6,"status":16,"title":39},"453169617112670208","Spring事务原理、传播机制、失效场景、分布式事务全套实现",{"children":10,"description":4,"id":41,"noteId":30,"parentId":14,"sort":42,"status":16,"title":43},"453169742979538944",2,"SpringBoot2\u002F3\u002F4自动装配原理、版本迭代详解",{"content":45,"contentType":46,"description":4,"title":43,"wordCount":47},"# SpringBoot2\u002F3\u002F4自动装配原理、版本迭代、SpringCloud全家桶架构详解\n\n本文全覆盖面试高频：**SpringBoot核心思想、自动装配完整原理、SPI机制、条件注解、2\\.x\u002F3\\.x\u002F4\\.x版本核心差异、SpringCloud微服务架构、全家桶组件原理**，逻辑闭环、无废话、可直接背诵刷题。\n\n## 一、SpringBoot 核心设计思想\n\n### 1\\. 核心宗旨\n\n**约定大于配置、自动装配、开箱即用**\n\n- 消除繁琐XML配置、样板化配置\n\n- 根据依赖自动注入Bean、自动装配组件\n\n- 内嵌容器、独立启动、快速开发\n\n### 2\\. 两大核心机制\n\n- **自动装配 AutoConfiguration**：智能加载场景所需Bean，无需手动@Bean\n\n- **starter启动器**：依赖封装\\+自动配置类封装，引入依赖即开启功能\n\n---\n\n## 二、SpringBoot 自动装配完整实现原理（面试必背）\n\n### 1\\. 核心启动注解：@SpringBootApplication\n\n复合注解，包含三大核心能力：\n\n- **@Configuration**：标识当前类为配置类\n\n- **@ComponentScan**：默认扫描启动类同级及下级包下所有组件\n\n- **@EnableAutoConfiguration**：开启自动装配（核心）\n\n### 2\\. 自动装配底层流程（完整链路）\n\n```plain\n自动装配执行流程\n1. 启动类标注 @SpringBootApplication\n2. 触发 @EnableAutoConfiguration\n3. Spring SPI机制加载 META-INF\u002Fspring\u002Forg.springframework.boot.autoconfigure.AutoConfiguration.imports\n4. 读取所有自动配置类（XXXAutoConfiguration）\n5. 通过条件注解按需筛选生效配置类\n6. 自动创建Bean、注入容器、完成功能装配\n\n```\n\n### 3\\. SPI 机制（SpringBoot扩展核心）\n\n**SPI：服务提供者接口扩展机制**，实现框架解耦、插件化加载。\n\n核心作用：框架定义接口，业务\u002F第三方组件实现接口，通过配置文件自动发现并加载实现类，无需硬编码。\n\n### 4\\. 条件注解体系（按需装配核心）\n\n所有自动配置类都带条件注解，**满足条件才装配**，避免冗余Bean\n\n- **@ConditionalOnClass**：class存在才生效\n\n- **@ConditionalOnMissingBean**：容器无自定义Bean才生效（允许用户覆盖默认配置）\n\n- **@ConditionalOnProperty**：配置文件参数匹配才生效\n\n- **@ConditionalOnWebApplication**：Web环境才生效\n\n### 5\\. 自动装配核心优势\n\n- 开箱即用，减少样板代码\n\n- 用户可自定义Bean覆盖默认自动配置\n\n- 按需加载、轻量化、性能高\n\n---\n\n## 三、SpringBoot 2\\.x \u002F 3\\.x \u002F 4\\.x 核心版本迭代差异\n\n### 1\\. SpringBoot2\\.x（经典稳定版）\n\n- 基于 JDK8\\+，兼容广泛、企业存量最多\n\n- 自动配置文件路径：`META-INF\u002Fspring.factories`\n\n- 默认动态代理：CGLIB\n\n- JWT、Servlet、JPA 经典适配\n\n- SpringCloud 主流适配版本：Hoxton、2021\n\n### 2\\. SpringBoot3\\.x（重大革新版）\n\n- **强制JDK17\\+**，最低JDK17\n\n- **废除 spring\\.factories**，改用新SPI配置文件：\n        \n`META-INF\u002Fspring\u002Forg.springframework.boot.autoconfigure.AutoConfiguration.imports`\n\n- 全面适配Jakarta EE：**javax\\.\\* 包全部迁移为 jakarta\\.\\***\n\n- 原生镜像GraalVM支持，启动速度暴涨、内存极低\n\n- 安全框架大幅重构、Web内核优化、弃用过时API\n\n- SpringCloud 适配 2023\\.x 系列\n\n### 3\\. SpringBoot4\\.x（最新旗舰版）\n\n- 基于 JDK21\\+ 虚拟线程、新特性\n\n- 极致优化GraalVM原生镜像\n\n- 彻底清理废弃过时API\n\n- 全面拥抱云原生、容器化、轻量化部署\n\n- 微服务、云服务生态全面适配\n\n### 4\\. 面试高频核心区别总结\n\n- **2\\.x → 3\\.x 最大改动**：SPI配置文件更换 \\+ javax迁移jakarta \\+ 强制JDK17\n\n- **3\\.x → 4\\.x**：JDK版本升级、虚拟线程支持、云原生极致优化\n\n---\n\n## 四、SpringBoot 整体框架理解（面试标准答案）\n\nSpringBoot 是 **Spring框架的脚手架、增强工具、快速开发框架**，并非替代Spring，而是基于Spring做封装优化。\n\n- 底层完全依赖 Spring IOC、AOP、事务机制\n\n- 通过 Starter \\+ 自动装配 简化开发\n\n- 内嵌Tomcat，无需外部容器\n\n- 统一配置体系、统一监控、统一日志\n\n- 为 SpringCloud 微服务提供底层基础能力\n\n---\n\n## 五、SpringCloud 微服务框架整体理解\n\n### 1\\. 核心定义\n\n**SpringCloud 是一套基于 SpringBoot 的微服务生态解决方案**，提供微服务开发、治理、通信、注册、配置、熔断、网关全套标准化组件。\n\n### 2\\. 微服务核心思想\n\n- 单体拆微服务：按业务垂直拆分、独立部署、独立迭代\n\n- 去中心化、分布式协作、弹性扩容、容错降级\n\n- 统一微服务治理体系\n\n### 3\\. SpringCloud 核心架构链路\n\n```plain\n微服务标准调用链路\n客户端请求 → 网关Gateway → 注册中心Nacos\u002FEureka → \n服务消费者OpenFeign → 服务提供者 → 配置中心Nacos → \n熔断降级Sentinel → 链路追踪SkyWalking\n\n```\n\n---\n\n## 六、SpringCloud 全家桶核心组件原理\n\n### 1\\. 注册中心：Nacos（主流）\u002F Eureka（淘汰）\n\n- 核心作用：**服务注册、发现、健康检测**\n\n- 微服务启动注册自身地址，调用时拉取服务列表\n\n- Nacos同时支持注册中心\\+配置中心，AP架构、高可用\n\n### 2\\. 服务网关：SpringCloud Gateway\n\n- 替代Zuul，基于Netty、响应式编程\n\n- 核心功能：**路由转发、负载均衡、鉴权、限流、过滤、跨域**\n\n- 微服务统一入口，屏蔽后端服务细节\n\n### 3\\. 远程调用：OpenFeign\n\n- 声明式远程调用，封装HTTP请求\n\n- 像调用本地方法一样调用远程微服务\n\n- 内置负载均衡，替代原生Ribbon\n\n### 4\\. 熔断降级：Sentinel\n\n- 核心：**流量控制、熔断降级、系统自适应保护**\n\n- 防止服务雪崩，服务失败不扩散\n\n- 实时监控、控制台可视化配置\n\n### 5\\. 配置中心：Nacos Config\n\n- 统一管理微服务配置文件\n\n- 动态刷新配置，无需重启服务\n\n- 环境隔离、版本管理、灰度配置\n\n### 6\\. 负载均衡：LoadBalancer\n\n- SpringCloud新版默认负载均衡组件\n\n- 替代Ribbon，支持响应式、自定义负载策略\n\n### 7\\. 链路追踪：SkyWalking \u002F Sleuth\\+Zipkin\n\n- 追踪分布式请求全链路\n\n- 定位超时、异常、卡顿节点\n\n- 微服务排查问题必备\n\n---\n\n## 七、SpringBoot \\+ SpringCloud 层级关系（必背）\n\n- **Spring**：底层核心框架（IOC、AOP、事务）\n\n- **SpringBoot**：Spring脚手架，快速开发单体\u002F微服务单体应用\n\n- **SpringCloud**：基于SpringBoot的**分布式微服务治理全家桶**\n\n**一句话总结**：Spring做底层，SpringBoot做单体快速开发，SpringCloud做分布式微服务治理。\n\n---\n\n## 八、终极面试极简背诵总结\n\n- **自动装配原理**：@EnableAutoConfiguration \\+ SPI加载配置类 \\+ 条件注解按需装配，实现Bean自动注入、开箱即用。\n\n- **版本差异**：2\\.x使用factories、JDK8、javax包；3\\.x\\+改用imports、JDK17\\+、jakarta包、支持原生镜像。\n\n- **SpringBoot定位**：Spring增强脚手架，简化配置、内嵌容器、自动装配，是微服务单体基础。\n\n- **SpringCloud定位**：基于SpringBoot的微服务治理体系，包含注册发现、网关、远程调用、熔断、配置、链路追踪全套能力。\n","markdown",3939,{"frontmatter":49,"meta":50,"nodes":148},{},{"title":51,"description":52,"toc":53},"SpringBoot2\u002F3\u002F4自动装配原理、版本迭代、SpringCloud全家桶架构详解","本文全覆盖面试高频：SpringBoot核心思想、自动装配完整原理、SPI机制、条件注解、2.x\u002F3.x\u002F4.x版本核心差异、SpringCloud微服务架构、全家桶组件原理，逻辑闭环、无废话、可直接背诵刷题。",{"title":4,"searchDepth":54,"depth":54,"links":55},5,[56,67,86,102,105,118,143,146],{"id":57,"depth":42,"text":58,"children":59},"springboot","一、SpringBoot 核心设计思想",[60,64],{"id":61,"depth":62,"text":63},"springboot-_1",3,"1. 核心宗旨",{"id":65,"depth":62,"text":66},"springboot-_2","2. 两大核心机制",{"id":68,"depth":42,"text":69,"children":70},"springboot-1","二、SpringBoot 自动装配完整实现原理（面试必背）",[71,74,77,80,83],{"id":72,"depth":62,"text":73},"springboot-_1-springbootapplication","1. 核心启动注解：@SpringBootApplication",{"id":75,"depth":62,"text":76},"springboot-_2-1","2. 自动装配底层流程（完整链路）",{"id":78,"depth":62,"text":79},"springboot-_3-spi-springboot","3. SPI 机制（SpringBoot扩展核心）",{"id":81,"depth":62,"text":82},"springboot-_4","4. 条件注解体系（按需装配核心）",{"id":84,"depth":62,"text":85},"springboot-_5","5. 自动装配核心优势",{"id":87,"depth":42,"text":88,"children":89},"springboot-2x-3x-4x","三、SpringBoot 2.x \u002F 3.x \u002F 4.x 核心版本迭代差异",[90,93,96,99],{"id":91,"depth":62,"text":92},"springboot-2x-3x-4x-_1-springboot2x","1. SpringBoot2.x（经典稳定版）",{"id":94,"depth":62,"text":95},"springboot-2x-3x-4x-_2-springboot3x","2. SpringBoot3.x（重大革新版）",{"id":97,"depth":62,"text":98},"springboot-2x-3x-4x-_3-springboot4x","3. SpringBoot4.x（最新旗舰版）",{"id":100,"depth":62,"text":101},"springboot-2x-3x-4x-_4","4. 面试高频核心区别总结",{"id":103,"depth":42,"text":104},"springboot-2","四、SpringBoot 整体框架理解（面试标准答案）",{"id":106,"depth":42,"text":107,"children":108},"springcloud","五、SpringCloud 微服务框架整体理解",[109,112,115],{"id":110,"depth":62,"text":111},"springcloud-_1","1. 核心定义",{"id":113,"depth":62,"text":114},"springcloud-_2","2. 微服务核心思想",{"id":116,"depth":62,"text":117},"springcloud-_3-springcloud","3. SpringCloud 核心架构链路",{"id":119,"depth":42,"text":120,"children":121},"springcloud-1","六、SpringCloud 全家桶核心组件原理",[122,125,128,131,134,137,140],{"id":123,"depth":62,"text":124},"springcloud-_1-nacos-eureka","1. 注册中心：Nacos（主流）\u002F Eureka（淘汰）",{"id":126,"depth":62,"text":127},"springcloud-_2-springcloud-gateway","2. 服务网关：SpringCloud Gateway",{"id":129,"depth":62,"text":130},"springcloud-_3-openfeign","3. 远程调用：OpenFeign",{"id":132,"depth":62,"text":133},"springcloud-_4-sentinel","4. 熔断降级：Sentinel",{"id":135,"depth":62,"text":136},"springcloud-_5-nacos-config","5. 配置中心：Nacos Config",{"id":138,"depth":62,"text":139},"springcloud-_6-loadbalancer","6. 负载均衡：LoadBalancer",{"id":141,"depth":62,"text":142},"springcloud-_7-skywalking-sleuthzipkin","7. 链路追踪：SkyWalking \u002F Sleuth+Zipkin",{"id":144,"depth":42,"text":145},"springboot-springcloud","七、SpringBoot + SpringCloud 层级关系（必背）",{"id":4,"depth":42,"text":147},"八、终极面试极简背诵总结",[149,153,162,165,168,173,186,188,202,205,207,209,212,232,234,243,245,251,254,256,263,289,291,302,304,306,308,328,330,344,349,366,368,385,387,401,403,405,412,429,431,433,435,441,443,454,456,461,463,465,467,481,483,497,499,510,512,526,528,539,541,549,551,562,564,566,589,595,597,599],[150,151,51],"h1",{"id":152},"springboot234springcloud",[154,155,156,157,161],"p",{},"本文全覆盖面试高频：",[158,159,160],"strong",{},"SpringBoot核心思想、自动装配完整原理、SPI机制、条件注解、2.x\u002F3.x\u002F4.x版本核心差异、SpringCloud微服务架构、全家桶组件原理","，逻辑闭环、无废话、可直接背诵刷题。",[163,164,58],"h2",{"id":57},[166,167,63],"h3",{"id":61},[154,169,170],{},[158,171,172],{},"约定大于配置、自动装配、开箱即用",[174,175,176,180,183],"ul",{},[177,178,179],"li",{},"消除繁琐XML配置、样板化配置",[177,181,182],{},"根据依赖自动注入Bean、自动装配组件",[177,184,185],{},"内嵌容器、独立启动、快速开发",[166,187,66],{"id":65},[174,189,190,196],{},[177,191,192,195],{},[158,193,194],{},"自动装配 AutoConfiguration","：智能加载场景所需Bean，无需手动@Bean",[177,197,198,201],{},[158,199,200],{},"starter启动器","：依赖封装+自动配置类封装，引入依赖即开启功能",[203,204],"hr",{},[163,206,69],{"id":68},[166,208,73],{"id":72},[154,210,211],{},"复合注解，包含三大核心能力：",[174,213,214,220,226],{},[177,215,216,219],{},[158,217,218],{},"@Configuration","：标识当前类为配置类",[177,221,222,225],{},[158,223,224],{},"@ComponentScan","：默认扫描启动类同级及下级包下所有组件",[177,227,228,231],{},[158,229,230],{},"@EnableAutoConfiguration","：开启自动装配（核心）",[166,233,76],{"id":75},[235,236,238],"pre",{"language":237},"plain",[239,240,242],"code",{"class":241},"language-plain","自动装配执行流程\n1. 启动类标注 @SpringBootApplication\n2. 触发 @EnableAutoConfiguration\n3. Spring SPI机制加载 META-INF\u002Fspring\u002Forg.springframework.boot.autoconfigure.AutoConfiguration.imports\n4. 读取所有自动配置类（XXXAutoConfiguration）\n5. 通过条件注解按需筛选生效配置类\n6. 自动创建Bean、注入容器、完成功能装配\n",[166,244,79],{"id":78},[154,246,247,250],{},[158,248,249],{},"SPI：服务提供者接口扩展机制","，实现框架解耦、插件化加载。",[154,252,253],{},"核心作用：框架定义接口，业务\u002F第三方组件实现接口，通过配置文件自动发现并加载实现类，无需硬编码。",[166,255,82],{"id":81},[154,257,258,259,262],{},"所有自动配置类都带条件注解，",[158,260,261],{},"满足条件才装配","，避免冗余Bean",[174,264,265,271,277,283],{},[177,266,267,270],{},[158,268,269],{},"@ConditionalOnClass","：class存在才生效",[177,272,273,276],{},[158,274,275],{},"@ConditionalOnMissingBean","：容器无自定义Bean才生效（允许用户覆盖默认配置）",[177,278,279,282],{},[158,280,281],{},"@ConditionalOnProperty","：配置文件参数匹配才生效",[177,284,285,288],{},[158,286,287],{},"@ConditionalOnWebApplication","：Web环境才生效",[166,290,85],{"id":84},[174,292,293,296,299],{},[177,294,295],{},"开箱即用，减少样板代码",[177,297,298],{},"用户可自定义Bean覆盖默认自动配置",[177,300,301],{},"按需加载、轻量化、性能高",[203,303],{},[163,305,88],{"id":87},[166,307,92],{"id":91},[174,309,310,313,319,322,325],{},[177,311,312],{},"基于 JDK8+，兼容广泛、企业存量最多",[177,314,315,316],{},"自动配置文件路径：",[239,317,318],{},"META-INF\u002Fspring.factories",[177,320,321],{},"默认动态代理：CGLIB",[177,323,324],{},"JWT、Servlet、JPA 经典适配",[177,326,327],{},"SpringCloud 主流适配版本：Hoxton、2021",[166,329,95],{"id":94},[174,331,332,338],{},[177,333,334,337],{},[158,335,336],{},"强制JDK17+","，最低JDK17",[177,339,340,343],{},[158,341,342],{},"废除 spring.factories","，改用新SPI配置文件：",[154,345,346],{},[239,347,348],{},"META-INF\u002Fspring\u002Forg.springframework.boot.autoconfigure.AutoConfiguration.imports",[174,350,351,357,360,363],{},[177,352,353,354],{},"全面适配Jakarta EE：",[158,355,356],{},"javax.* 包全部迁移为 jakarta.*",[177,358,359],{},"原生镜像GraalVM支持，启动速度暴涨、内存极低",[177,361,362],{},"安全框架大幅重构、Web内核优化、弃用过时API",[177,364,365],{},"SpringCloud 适配 2023.x 系列",[166,367,98],{"id":97},[174,369,370,373,376,379,382],{},[177,371,372],{},"基于 JDK21+ 虚拟线程、新特性",[177,374,375],{},"极致优化GraalVM原生镜像",[177,377,378],{},"彻底清理废弃过时API",[177,380,381],{},"全面拥抱云原生、容器化、轻量化部署",[177,383,384],{},"微服务、云服务生态全面适配",[166,386,101],{"id":100},[174,388,389,395],{},[177,390,391,394],{},[158,392,393],{},"2.x → 3.x 最大改动","：SPI配置文件更换 + javax迁移jakarta + 强制JDK17",[177,396,397,400],{},[158,398,399],{},"3.x → 4.x","：JDK版本升级、虚拟线程支持、云原生极致优化",[203,402],{},[163,404,104],{"id":103},[154,406,407,408,411],{},"SpringBoot 是 ",[158,409,410],{},"Spring框架的脚手架、增强工具、快速开发框架","，并非替代Spring，而是基于Spring做封装优化。",[174,413,414,417,420,423,426],{},[177,415,416],{},"底层完全依赖 Spring IOC、AOP、事务机制",[177,418,419],{},"通过 Starter + 自动装配 简化开发",[177,421,422],{},"内嵌Tomcat，无需外部容器",[177,424,425],{},"统一配置体系、统一监控、统一日志",[177,427,428],{},"为 SpringCloud 微服务提供底层基础能力",[203,430],{},[163,432,107],{"id":106},[166,434,111],{"id":110},[154,436,437,440],{},[158,438,439],{},"SpringCloud 是一套基于 SpringBoot 的微服务生态解决方案","，提供微服务开发、治理、通信、注册、配置、熔断、网关全套标准化组件。",[166,442,114],{"id":113},[174,444,445,448,451],{},[177,446,447],{},"单体拆微服务：按业务垂直拆分、独立部署、独立迭代",[177,449,450],{},"去中心化、分布式协作、弹性扩容、容错降级",[177,452,453],{},"统一微服务治理体系",[166,455,117],{"id":116},[235,457,458],{"language":237},[239,459,460],{"class":241},"微服务标准调用链路\n客户端请求 → 网关Gateway → 注册中心Nacos\u002FEureka → \n服务消费者OpenFeign → 服务提供者 → 配置中心Nacos → \n熔断降级Sentinel → 链路追踪SkyWalking\n",[203,462],{},[163,464,120],{"id":119},[166,466,124],{"id":123},[174,468,469,475,478],{},[177,470,471,472],{},"核心作用：",[158,473,474],{},"服务注册、发现、健康检测",[177,476,477],{},"微服务启动注册自身地址，调用时拉取服务列表",[177,479,480],{},"Nacos同时支持注册中心+配置中心，AP架构、高可用",[166,482,127],{"id":126},[174,484,485,488,494],{},[177,486,487],{},"替代Zuul，基于Netty、响应式编程",[177,489,490,491],{},"核心功能：",[158,492,493],{},"路由转发、负载均衡、鉴权、限流、过滤、跨域",[177,495,496],{},"微服务统一入口，屏蔽后端服务细节",[166,498,130],{"id":129},[174,500,501,504,507],{},[177,502,503],{},"声明式远程调用，封装HTTP请求",[177,505,506],{},"像调用本地方法一样调用远程微服务",[177,508,509],{},"内置负载均衡，替代原生Ribbon",[166,511,133],{"id":132},[174,513,514,520,523],{},[177,515,516,517],{},"核心：",[158,518,519],{},"流量控制、熔断降级、系统自适应保护",[177,521,522],{},"防止服务雪崩，服务失败不扩散",[177,524,525],{},"实时监控、控制台可视化配置",[166,527,136],{"id":135},[174,529,530,533,536],{},[177,531,532],{},"统一管理微服务配置文件",[177,534,535],{},"动态刷新配置，无需重启服务",[177,537,538],{},"环境隔离、版本管理、灰度配置",[166,540,139],{"id":138},[174,542,543,546],{},[177,544,545],{},"SpringCloud新版默认负载均衡组件",[177,547,548],{},"替代Ribbon，支持响应式、自定义负载策略",[166,550,142],{"id":141},[174,552,553,556,559],{},[177,554,555],{},"追踪分布式请求全链路",[177,557,558],{},"定位超时、异常、卡顿节点",[177,560,561],{},"微服务排查问题必备",[203,563],{},[163,565,145],{"id":144},[174,567,568,574,580],{},[177,569,570,573],{},[158,571,572],{},"Spring","：底层核心框架（IOC、AOP、事务）",[177,575,576,579],{},[158,577,578],{},"SpringBoot","：Spring脚手架，快速开发单体\u002F微服务单体应用",[177,581,582,585,586],{},[158,583,584],{},"SpringCloud","：基于SpringBoot的",[158,587,588],{},"分布式微服务治理全家桶",[154,590,591,594],{},[158,592,593],{},"一句话总结","：Spring做底层，SpringBoot做单体快速开发，SpringCloud做分布式微服务治理。",[203,596],{},[163,598,147],{"id":4},[174,600,601,607,613,619],{},[177,602,603,606],{},[158,604,605],{},"自动装配原理","：@EnableAutoConfiguration + SPI加载配置类 + 条件注解按需装配，实现Bean自动注入、开箱即用。",[177,608,609,612],{},[158,610,611],{},"版本差异","：2.x使用factories、JDK8、javax包；3.x+改用imports、JDK17+、jakarta包、支持原生镜像。",[177,614,615,618],{},[158,616,617],{},"SpringBoot定位","：Spring增强脚手架，简化配置、内嵌容器、自动装配，是微服务单体基础。",[177,620,621,624],{},[158,622,623],{},"SpringCloud定位","：基于SpringBoot的微服务治理体系，包含注册发现、网关、远程调用、熔断、配置、链路追踪全套能力。"]