国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

記錄spring-boot 1.5.9升級至2.0.1的那些坑

gitmilk / 3239人閱讀

摘要:前兩天組里的大佬心血來潮,讓我這周把項目里的版本升級到最新版本,目前項目用到的是版本為的版本為現在按照要求統一升級到。三數據庫連接池同樣也是版本不兼容,需要升級到,親測有效。差不多這些,后續遇到其他問題還會繼續補充。

前兩天組里的大佬心血來潮,讓我這周把項目里的spring-boot、spring-cloud版本升級到最新版本,目前項目用到的是spring-boot版本為1.5.9.RELEASE,spring-cloud的版本為Edgware.SR2,現在按照要求統一升級到2.0.1.RELEASE、Finchley.RELEASE。以下分享一些我遇到的坑:
pom.xml配置如下,內容太長,只貼出部分核心的內容
    
        org.springframework.boot
        spring-boot-starter-parent
        2.0.1.RELEASE
    
    
        
             
             
                org.mybatis.spring.boot
                mybatis-spring-boot-starter
                2.0.1.RELEASE
             
              
            
                org.springframework.cloud
                spring-cloud-dependencies
                Finchley.RELEASE
                pom
                import
            
            
            
                redis.clients
                jedis
                2.9.0
            
            
                com.fasterxml.jackson.core
                jackson-databind
                2.9.4
            
            
                com.zaxxer
                HikariCP
                2.7.8
            
            
            
                org.springframework.cloud
                spring-cloud-starter-openfeign
            

            
                org.springframework.cloud
                spring-cloud-starter-netflix-zuul
            

            
                org.springframework.cloud
                spring-cloud-starter-netflix-eureka-client
            
            
            
                org.springframework.boot
                spring-boot-starter-data-redis
            
            
          
    

一.spring boot2.0.x引用redis的版本需要升級至2.9.0,以前的版本將不支持jedisConnFactory對象的注入,具體報錯如下

二.jackson-databind 這個依賴可以將JSON格式的數據轉化為類對象,這里有個很蛋疼的坑,之前項目里用的版本是2.6.3,升級過后本地項目也運行沒啥問題,上了測試環境就報錯,看了啟動日志上是缺少Jackson包里的某個類導致報錯,上網查了下,這種情況一般是spring的版本和jackson的版本不兼容導致,新版本已經不支持2.6.3的依賴,于是直接換成最新的版本2.9.0,問題解決。

三.HikariCP 數據庫連接池 同樣也是版本不兼容,需要升級到2.7.8,親測有效。

四.spring boot 2.0之前的版本用的spring-cloud-starter-feign,升級過后你會發現這個依賴下有關的類都找不到了,看了下2.0之后的新特性,是改成了spring-cloud-starter-openfeign,注解類名的路徑也變了,由org.springframework.cloud.netflix.feign.FeignClient變為org.springframework.cloud.openfeign.FeignClient。

@Configuration
public class DataSourceConfig {

    @Primary
    @Bean(name = "pmDataSource")
    @ConfigurationProperties(prefix = "credit-push-message.jdbc")
    public DataSource pmDataSource() {
        return DataSourceBuilder.create().type(HikariDataSource.class).build();
    }

}

五.配置數據源這里也發現一個問題,@ConfigurationProperties,新版本將不再支持自定義的前綴包含大寫或下劃線格式類型,官方給出的規范是小寫加連接號。

spring:
  http:
    encoding:
      charset: utf-8
      force: false
      enabled: false
  mvc:
    favicon:
      enabled: false
  jmx:
    enabled: false
  application:
    name: push-message-gateway

server:
  port: 21102
  servlet:
   context-path: /push-message-gateway
  ssl:
    enabled: false
  error:
    whitelabel:
      enabled: false

zuul:
  ignored-services: "*"            # 設置忽略的服務
  routes:
    configServer:
      path: /config/**
      serviceId: push-message-config
    gatherServer:
      path: /gather/**
      serviceId: push-message-gather
    messageServer:
      path: /center/**
      serviceId: message-center

info:
  app:
    name: "@parent.artifactId@" #從pom.xml中獲取
    description: "@project.description@"
    version: "@project.version@"
    spring-boot-version: "@spring.boot.version@"

eureka:
   client:
     serviceUrl:
       defaultZone:  ${eureka-zone-url}
   instance:
     preferIpAddress: true
     instance-id: ${spring.cloud.client.ip-address}:${server.port}

六.新版本不支持context-path: /push-message-gateway的寫法,必須寫成servlet:context-path: /push-message-gateway,instance-id這里的客戶端ip地址也不兼容,需要從spring.cloud.client.ipAddress變成spring.cloud.client.ip-address。

差不多這些,后續遇到其他問題還會繼續補充。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76832.html

相關文章

  • Spring Cloud 升級最新 Finchley 版本,踩了所有

    摘要:因為默認開啟了所有攻擊防御,需要禁用的防御。版本變化有點大,本次已成功升級了基礎依賴,及注冊中心配置中心。其他像代替了及其他組件再慢慢升級,的快速發展令升級變得非常蛋疼,本文記錄了升級過程中踩過的所有的坑。。。 Spring Boot 2.x 已經發布了很久,現在 Spring Cloud 也發布了 基于 Spring Boot 2.x 的 Finchley 版本,現在一起為項目做一次...

    WelliJhon 評論0 收藏0
  • SpringCloud升級之路2020.0.x版-41. SpringCloudGateway 基本

    摘要:將請求封裝成將請求封裝成的接口定義是但是最外層傳進來的參數是和,需要將他們封裝成,這個工作就是在中做的。其實主要任務就是將各種參數封裝成除了和本次請求相關的和,還有會話管理器,編碼解碼器配置,國際化配置還有用于擴展。本系列代碼地址:https://github.com/JoJoTec/spring-cloud-parent接下來,將進入我們升級之路的又一大模塊,即網關模塊。網關模塊我們廢棄了...

    不知名網友 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<