来源:https://dwz.cn/LkwPsmut

前几天介绍了,关于Spring Cloud Greenwich版本发布的官方博客翻译:Spring Cloud Greenwich.RELEASE 正式发布!一个非常有看头的版本!,今天我们一起学习一下来自“冷冷gg”大神的升级战报!


2019.01.23 期待已久的Spring Cloud Greenwich 发布了release版本,作为我们团队也第一时间把RC版本替换为release,以下为总结,希望对你使用Spring Cloud Greenwich 有所帮助 Greenwich 只支持 Spring Boot 2.1.x 分支。如果使用 2.0.x 请使用Finchley版本。

pom坐标

主要是适配JAVA11

  1. <!--支持Spring Boot 2.1.X-->

  2. <dependency>

  3.    <groupId>org.springframework.boot</groupId>

  4.    <artifactId>spring-boot-dependencies</artifactId>

  5.    <version>2.1.2.RELEASE</version>

  6.    <type>pom</type>

  7.    <scope>import</scope>

  8. </dependency>

  9. <!--Greenwich.RELEASE-->

  10. <dependency>

  11.    <groupId>org.springframework.cloud</groupId>

  12.    <artifactId>spring-cloud-dependencies</artifactId>

  13.    <version>Greenwich.RELEASE</version>

  14.    <type>pom</type>

  15.    <scope>import</scope>

  16. </dependency>

升级netflix版本,DiscoveryClient支持获取InstanceId

Spring Cloud Config 提供了新的存储介质

除了Git、File、JDBC,新版本提供 在Cloud Foundry的CredHub存储功能

  1. spring:

  2.  profiles:

  3.    active: credhub

  4.  cloud:

  5.    config:

  6.      server:

  7.        credhub:

  8.          url: https://credhub:8844

Spring Cloud Gateway

支持整合OAuth2

这里提供了一个例子: Spring Cloud Gateway and Spring Security OAuth2

整合的时候有个坑可以参考这个issue:ReactiveManagementWebSecurityAutoConfiguration Prevent's oauth2Login from being defaulted

新增重写响应头过滤器

  1. spring:

  2.  cloud:

  3.    gateway:

  4.      routes:

  5.      - id: rewriteresponseheader_route

  6.        uri: http://example.org

  7.        filters:

  8.        - RewriteResponseHeader=X-Response-Foo, , password=[^&]+, password=***

Feign的新特性和坑

@SpringQueryMap 对Get请求进行了增强

  1. 终于解决这个问题了

  2. 不用直接使用OpenFeign新增的@QueryMap,由于缺少value属性 QueryMap注释与Spring不兼容...

异常解决

对Spring Cloud Finchley 进行直接升级时候发现feign启动报错了

  1. ***************************

  2. APPLICATION FAILED TO START

  3. ***************************

  4. Description:

  5. The bean 'pigx-upms-biz.FeignClientSpecification', defined in null, could not be registered. A bean with that name has already been defined in null and overriding is disabled.

  6. Action:

  7. Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true

  8. Process finished with exit code 1

  1. 第一种粗暴的解决方法,异常日志中说明了,在 bootstrap.yml中配置

  1. spring.main.allow-bean-definition-overriding=true

这是Spring Boot 2.1 后新增的属性运行bean 覆盖,不要配置到配置中心里面,不然无效

  1. 第二种,就是把通过同一个服务调用的代码,移动到同一个@FeignClient中

  2. contextId ,这个是@FeignClient 新增的一个属性

  1. This will be used as the bean name instead of name if present, but will not be used as a service id.

就可以用这个属性区分@FeigenClient 标志的同一个service 的接口

总结

  1. Spring Cloud F -- > G 变化很小,微乎其微主要是JAVA11的兼容

  2. 很遗憾没有看到 Spring Cloud Alibaba 加油。

  3. Spring Cloud LoadBalancer 还是老样子。目前来看暂时无法替代 Ribbon

  4. 欢迎加冷冷gg的Q2270033969,讨论Spring Cloud

本号正在连载「 Spring Cloud Alibaba基础教程 」


Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现

Spring Cloud Alibaba基础教程:Nacos 生产级版本 0.8.0

Spring Cloud Alibaba基础教程:几种服务消费方式(RestTemplate、WebClient、Feign)

Spring Cloud Alibaba基础教程:使用Nacos作为配置中心


更多内容关注我,近期持续更新!


号外:最近整理了之前编写的一系列 Spring Boot 内容,做成了《Spring Boot基础教程》的PDF,关注我并回复:001 领取,002 资源即将整理出炉,随后将陆续奉上,敬请期待 

- END -

 近期热文:

  • 深度解密HTTP通信细节

  • 用认知和人性来做最棒的程序员

  • Gitlab-CI持续集成的完整实践

  • “三次握手,四次挥手”你真的懂吗?

  • “拼多多”被薅的问题出在哪儿?损失将如何买单?

  • 在前后端分离的路上承受了多少痛?看看这篇是否能帮到你?

  • 你真的会高效的在GitHub上搜索开源项目吗?

  • 中台是个什么鬼?

  • 从业务到平台的思维转变

更多私货分享

欢迎加入「我的星球」

?

看完,赶紧点个“好看”鸭

点鸭点鸭

↓↓↓↓

Spring Cloud Greenwich 新特性和F版升级分享相关推荐

  1. Spring Cloud Greenwich 新特性和F升级分享

    2019.01.23 期待已久的Spring Cloud Greenwich 发布了release版本,作为我们团队也第一时间把RC版本替换为release,以下为总结,希望对你使用Spring Cl ...

  2. Spring Cloud Edgware新特性之一:解决Eureka中Jersey 1.x版本过旧的问题-不使用Jersey

    为什么80%的码农都做不了架构师?>>>    Spring Cloud是当前炙手可热的微服务开发框架.它的功能强大,组件丰富,设计优雅.目前Spring Cloud还在不断发展之中 ...

  3. Spring Cloud Edgware新特性之八:Zuul回退的改进

    为什么80%的码农都做不了架构师?>>>    Spring Cloud Edgware对Hystrix回退的逻辑进行了一些改进.本文将信息探讨新旧版本的回退操作,并分析的原因及改进 ...

  4. Spring Cloud Greenwich版本已发布!

    点击上方"方志朋",选择"置顶或者星标" 你的关注意义重大! 就在1月23日,spring的官方博客发布了Spring Cloud Greenwich版本正式发 ...

  5. Spring Cloud Greenwich 正式发布,Hystrix 即将寿终正寝!

    Spring Cloud Greenwich 正式版在 01/23/2019 这天正式发布了,下面我们来看下有哪些更新内容. 生命周期终止提醒 Spring Cloud Edgware Edgware ...

  6. 我这样回答了Spring 5的新特性,面试官对我刮目相看 | 文末送书

    最近,有一个小伙伴拿到了自己满意的Offer,和他交谈的过程中得知他面试官问他关于Spring的问题比较多,其中最让面试官满意的就是自己回答关于Spring 5的知识点回答的不错. Spring5是2 ...

  7. Spring Cloud Greenwich 最后一个计划版本发布!

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 局长 来源 | https://www.osc ...

  8. 再见RestTemplate,Spring 6.1新特性:R

    百度面经总结 最近在准备面试,看了很多大厂的面经,抽空将百度面试的题目整理了一下,希望对大家有所帮助!************面经1shiro的组件分布式一致性算法zooke 山东五征集团有限公司冲压 ...

  9. Spring Cloud在云计算SaaS中的实战经验分享

    摘要 云帐房CTO张英磊基于自己的个人经验,分享Spring Cloud在云计算SaaS中的实战经验,希望能为大家带来一些思路上的帮助. 内容来源:2017年5月6日,云帐房CTO张英磊在" ...

最新文章

  1. java switch 表达式_尝鲜Java 12新特性:switch表达式
  2. oracle控制文件发生坏块,控制文件坏块处理方法
  3. 送你8个Python高效数据分析的技巧(附代码)
  4. 上海技术英雄会续:几个典型问题的看法
  5. 编程大讲坛、坛坛是佳酿--编程大讲坛:C#核心开发技术从入门到精通
  6. ActFrameWork集成Beetlsql的Mapper功能
  7. emoji表情过滤处理
  8. 老罗的情怀“被”与廉价划等号 锤子“被”选错了对手
  9. Swift中文教程(十二) 下标
  10. 解决:configure: error: Missing Xext.h, maybe to install libxext-dev packages?
  11. transact和onTransact的区别
  12. MyBatis的四种资源加载方式以及优先级
  13. Java代码审计: ClassLoader应用
  14. react做h5 例子_从零搭建 React 开发 H5 模板
  15. 西门子S7-300 PLC视频教程(百度网盘)收集于网络-供参考学习
  16. 2021年全年详细工作日、周末、节假日数据表sql_excel
  17. reverse-polish-notation
  18. Worthington毒液中核酸外切酶的特征及相关文献
  19. 计算机没有管理无线网络,笔记本win7系统下没有无线网络选项的解决方法
  20. 变频电源3种电路结构介绍及电路图分享

热门文章

  1. linux c socket选项:SO_ERROR
  2. Nmap源码分析(脚本引擎)
  3. Linux 命令 alternatives和update-alternatives
  4. java设计模式---抽象工厂模式
  5. Android中的数据传递之Parcelable接口
  6. TCP/IP详解--第四章
  7. Linux C编程--进程间通信(IPC)3--信号集和发送信号介绍
  8. linux已知pid定向输出,Linux启动脚本输出pid
  9. 专题 10 时钟与信号
  10. java刚工作搭建环境_Java开发环境的搭建