news 2026/4/3 3:39:15

Spring Cloud Context 和 Spring Cloud Commons 包详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Spring Cloud Context 和 Spring Cloud Commons 包详解

Spring Cloud Context 和 Spring Cloud Commons 2.0.2 对应的Spring Cloud 整体版本是 Finchley.SR1

版本对应关系

Spring Cloud ContextSpring Cloud CommonsSpring Cloud 版本Spring Boot 兼容版本
2.0.22.0.2Finchley.SR12.0.x
2.1.02.1.0Greenwich.SR12.1.x
2.2.02.2.0Hoxton.SR12.2.x

Finchley 是 Spring Cloud 的第二个主要发布系列(2018年发布)。


Spring Cloud Context 介绍

主要功能

Spring Cloud Context 为 Spring Cloud 应用提供了应用上下文层次结构配置刷新机制

核心特性:

  1. Bootstrap Context(引导上下文)

    • 创建一个父级应用上下文,用于加载外部配置
    • 先于主应用上下文启动
    • 从配置中心(如Config Server)加载配置
  2. @RefreshScope

    • 支持配置的动态刷新
    • 无需重启应用即可更新配置值
  3. Environment端点

    • /actuator/env端点用于查看和修改环境属性
    • /actuator/refresh端点触发配置刷新
  4. 加密解密支持

    • 提供对称/非对称加密工具
    • 支持配置属性的加密存储

使用示例:

@SpringBootApplication@RefreshScope// 支持配置动态刷新publicclassApplication{@Value("${custom.property}")privateStringcustomProperty;// 配置刷新时,@RefreshScope的bean会被重新创建}

Spring Cloud Commons 介绍

主要功能

Spring Cloud Commons 提供了抽象层和通用工具,用于构建分布式系统的公共模式。

核心模块:

  1. 服务发现抽象

    • DiscoveryClient接口
    • 服务注册/发现的通用API
    • 支持多种注册中心(Eureka, Consul, Nacos等)
  2. 负载均衡

    • LoadBalancerClient接口
    • Ribbon 集成(在Finchley中)
  3. 配置客户端

    • ConfigClient相关支持
    • 从配置服务器获取配置
  4. RestTemplate 增强

    • @LoadBalanced注解
    • 支持服务名调用
  5. 服务调用

    • Feign 客户端的支持(通过spring-cloud-openfeign)

使用示例:

// 1. 服务发现@AutowiredprivateDiscoveryClientdiscoveryClient;publicList<ServiceInstance>getInstances(StringserviceId){returndiscoveryClient.getInstances(serviceId);}// 2. 负载均衡的RestTemplate@Bean@LoadBalancedpublicRestTemplaterestTemplate(){returnnewRestTemplate();}// 使用服务名调用Stringresult=restTemplate.getForObject("http://service-provider/api/hello",String.class);

两个包的关系

提供抽象接口

实现接口

使用工具类

Spring Cloud Commons

Spring Cloud Context

具体实现

Eureka

Consul

Config Server

  • Commons:定义标准和抽象(接口、注解)
  • Context:提供运行时支持和增强功能
  • 两者协同工作,共同构建Spring Cloud的基础设施

实际开发中的依赖

通常不需要直接引入这两个包,而是通过Spring Cloud Starter引入:

<!-- Finchley.SR1 的典型依赖 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter</artifactId><version>2.0.2.RELEASE</version></dependency><!-- 或具体功能starter --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-config</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency>

这两个包是Spring Cloud微服务架构的基础核心,几乎所有Spring Cloud功能都依赖于它们。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/1 1:48:11

加州大学河畔分校团队开发出Python版“海浪模拟器“

这项由加州大学河畔分校地球与行星科学系领导&#xff0c;联合多家印尼顶尖科研机构完成的研究发表于2025年1月的arXiv预印本服务器&#xff08;论文编号&#xff1a;2601.12029v1&#xff09;&#xff0c;有兴趣深入了解的读者可以通过该编号查询完整论文。把海浪想象成一个神…

作者头像 李华
网站建设 2026/3/24 9:02:20

Typhoon团队突破:仅1.15亿参数模型击败千亿参数巨型模型

这项由Typhoon团队和SCB 10X联合进行的研究发表于2026年1月&#xff0c;论文编号为arXiv:2601.13044v1。有兴趣深入了解的读者可以通过该编号查询完整论文。在人工智能语音识别的赛道上&#xff0c;一直以来都流行着"越大越好"的观念。就像盖房子时总觉得材料越多房子…

作者头像 李华
网站建设 2026/3/30 21:49:05

智慧铁路各种铁路上车厢类型检测数据集VOC+YOLO格式1311张11类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件)图片数量(jpg文件个数)&#xff1a;1311标注数量(xml文件个数)&#xff1a;1311标注数量(txt文件个数)&#xff1a;1311标注类别…

作者头像 李华
网站建设 2026/3/31 19:37:40

西安交通大学团队开发APOLO:让AI学会自己优化提示词

这项由西安交通大学计算机科学与技术学院联合新加坡国立大学苏瑞福公共卫生学院共同开展的研究&#xff0c;发表于2023年《IEEE情感计算汇刊》第14卷第3期&#xff08;页码1731-1747&#xff09;&#xff0c;为自动化提示词优化在心理健康诊断领域提供了创新解决方案。有兴趣深…

作者头像 李华
网站建设 2026/3/31 11:25:32

AS启动模拟器报错:HAXM驱动注册表修复示例

以下是对您提供的博文内容进行 深度润色与结构重构后的专业级技术文章 。全文已彻底去除AI生成痕迹,语言更贴近一线嵌入式/Android开发工程师的真实表达风格——逻辑严密、节奏紧凑、术语精准、经验厚重,并融合大量实战细节和“踩坑”体感。所有技术点均严格依据Intel官方文…

作者头像 李华
网站建设 2026/4/1 19:57:03

人脸融合实战:用unet image Face Fusion打造艺术换脸作品

人脸融合实战&#xff1a;用unet image Face Fusion打造艺术换脸作品 1. 这不是“换脸”&#xff0c;而是“艺术融合”——从技术工具到创意表达的转变 你有没有试过把一张古典油画里的人物面孔&#xff0c;自然地融合进现代街景照片中&#xff1f;或者让朋友的脸出现在梵高《…

作者头像 李华