由于对项目的依赖版本进行升级引发的一系列问题
将依赖升级成了:
- SpringBoot:2.4.12
- SpringCloud:2020.0.1
- SpringCloudAlibaba:2021.1
文档地址wiki
问题一:依赖升级之后项目中的bootstrap的配置文件失效问题
SpringCloud 2020的版本中关闭了bootstrap的默认开启配置
解决办法:
- 通过属性集spring.cloud.bootstrap.enabled=true或重新启用spring.config.use-legacy-processing=true。这些需要设置为环境变量、java 系统属性或命令行参数。
- 引入新的依赖spring-cloud-starter-bootstrap.
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> </dependency>
问题二:SpringCloud2020移除了ribbon
负载均衡未生效,即@LoadBalanced这个注释未生效
@LoadBalanced
@Bean
public RestTemplate restTemplate() {
return new RestTemplate();
}
解决办法:引入spring-cloud-starter-loadbalancer依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>