最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot項(xiàng)目多層級(jí)多環(huán)境yml設(shè)計(jì)詳解

 更新時(shí)間:2023年03月01日 09:03:52   作者:CoderV的進(jìn)階筆記  
這篇文章主要為大家介紹了SpringBoot項(xiàng)目多層級(jí)多環(huán)境yml設(shè)計(jì)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

需求場(chǎng)景

基礎(chǔ)設(shè)施模塊中有一些通用固定的基礎(chǔ)配置。例如:日志的配置,Spring本身的配置以及MyBatis Plus相關(guān)的固定配置等等。 這些配置往往與環(huán)境無關(guān),如何復(fù)用?

# 日志配置
logging:
  level:
    # 記得配置到包名
    com.agileboot: debug
    org.springframework: info
  pattern:
    console: "%date %thread %green(%level) [%cyan(%logger{10}):%magenta(%line)] %red(%method) | %msg%n"
# Spring配置
spring:
  # 文件上傳
  servlet:
     multipart:
       # 單個(gè)文件大小
       max-file-size:  10MB
       # 設(shè)置總上傳的文件大小
       max-request-size:  20MB
  mvc:
    pathmatch:
      matching-strategy: ANT_PATH_MATCHER
  jackson:
    deserialization:
      fail-on-unknown-properties: false
    serialization:
      write-dates-as-timestamps: false
    date-format: yyyy-MM-dd HH:mm:ss

基礎(chǔ)設(shè)施模塊中還有一些獨(dú)立于環(huán)境的配置。例如Mysql和Redis或者M(jìn)Q之類的。如何區(qū)分環(huán)境?

# 數(shù)據(jù)源配置
spring:
    # redis 配置
    redis:
        # 地址
        host: localhost
        # 端口,默認(rèn)為6379
        port: 36379
        # 數(shù)據(jù)庫(kù)索引
        database: 0
        # 密碼
        password: 12345
        # 連接超時(shí)時(shí)間
        timeout: 10s
        lettuce:
            pool:
                # 連接池中的最小空閑連接
                min-idle: 0
                # 連接池中的最大空閑連接
                max-idle: 8
                # 連接池的最大數(shù)據(jù)庫(kù)連接數(shù)
                max-active: 8
                # #連接池最大阻塞等待時(shí)間(使用負(fù)值表示沒有限制)
                max-wait: -1ms

日志相關(guān)的配置我們一般都配在logback.xml文件中。如何實(shí)現(xiàn)不同環(huán)境日志路徑不一樣?

想要達(dá)到的效果

  • 復(fù)用基礎(chǔ)設(shè)施模塊中的固定配置。
  • 區(qū)分多環(huán)境的配置。
  • logback日志引入多環(huán)境配置。

詳細(xì)代碼實(shí)現(xiàn)在開源項(xiàng)目Agileboot中:github.com/valarchie/A…

實(shí)現(xiàn)

假設(shè)我們有一個(gè)Admin模塊,我們可以給它定義一份application.yml文件。文件中描述該模塊特定的配置。比如端口,訪問路徑之類的。

# 開發(fā)環(huán)境配置
server:
  # 服務(wù)器的HTTP端口,默認(rèn)為8080
  port: 8080
  servlet:
    # 應(yīng)用的訪問路徑
    context-path: /
  tomcat:
    # tomcat的URI編碼
    uri-encoding: UTF-8
    # 連接數(shù)滿后的排隊(duì)數(shù),默認(rèn)為100
    accept-count: 1000
    threads:
      # tomcat最大線程數(shù),默認(rèn)為200
      max: 800
      # Tomcat啟動(dòng)初始化的線程數(shù),默認(rèn)值10
      min-spare: 100
# Spring配置 如果需要無Mysql  無Redis直接啟動(dòng)的話  dev改為test
# 生產(chǎn)環(huán)境把dev改為prod
spring:
  profiles:
    active: basic,dev

在基礎(chǔ)設(shè)施模塊中新建

applicaiton-basic.yml,配置一些與環(huán)境無關(guān)的基礎(chǔ)固定復(fù)用配置。

application-dev.yml,配置一些和環(huán)境相關(guān)的配置,例如數(shù)據(jù)庫(kù)的配置。

然后在spring.profiles.active配置中指定basic和dev文件。

此時(shí)springboot會(huì)自動(dòng)去找applicaiton-basic.ymlapplication-dev.yml文件。
所以我們最終的配置文件是由applicaiton.yml+applicaiton-basic.yml+applicaiton-dev.yml疊加的配置。

日志的多環(huán)境配置,我們可以新建一份logback-spring.xml文件。 假設(shè)我們想要根據(jù)環(huán)境配置不同的日志路徑??梢栽诶鏰pplication-dev.yml文件中配置logging.file.path。

然后在logback-spring.xml文件中使用springProperty標(biāo)簽讀取多環(huán)境yml中配置的路徑。

此時(shí)日志的路徑就會(huì)分別讀取不同環(huán)境配置的路徑了。

關(guān)于多層級(jí)多環(huán)境的yml及日志設(shè)計(jì)的內(nèi)容比較少。在此稍作總結(jié),希望有幫助到有類似需求的人。

以上就是SpringBoot項(xiàng)目多層級(jí)多環(huán)境yml設(shè)計(jì)詳解的詳細(xì)內(nèi)容,更多關(guān)于SpringBoot多層級(jí)多環(huán)境yml的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Java java.lang.ExceptionInInitializerError 錯(cuò)誤如何解決

    Java java.lang.ExceptionInInitializerError 錯(cuò)誤如何解決

    這篇文章主要介紹了 Java java.lang.ExceptionInInitializerError 錯(cuò)誤如何解決的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • mybatis-4 mybatis與spring結(jié)合使用及原理解析

    mybatis-4 mybatis與spring結(jié)合使用及原理解析

    本文通過圖文并茂的形式給大家介紹了mybatis-4 mybatis與spring結(jié)合使用及原理解析,非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2019-04-04
  • 深入了解JAVA 虛引用

    深入了解JAVA 虛引用

    這篇文章主要介紹了JAVA 虛引用的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)JAVA,感興趣的朋友可以了解下
    2020-08-08
  • 阿里云主機(jī)上安裝jdk 某庫(kù)出現(xiàn)問題的解決方法

    阿里云主機(jī)上安裝jdk 某庫(kù)出現(xiàn)問題的解決方法

    今天安裝jdk到阿里云服務(wù)上,首先看下阿里云是32位還是64位的,如果是32位下載32位的包,如果是64位的下載64位的包,下面與大家分享下安裝過程中遇到問題的解決方法
    2013-06-06
  • java操作xml的方法匯總及解析

    java操作xml的方法匯總及解析

    這篇文章主要介紹了java操作xml的方法匯總及解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • 手把手教你JAVA進(jìn)制之間的轉(zhuǎn)換

    手把手教你JAVA進(jìn)制之間的轉(zhuǎn)換

    這篇文章主要介紹了Java實(shí)現(xiàn)的進(jìn)制轉(zhuǎn)換,結(jié)合完整實(shí)例形式分析了Java實(shí)現(xiàn)二進(jìn)制、十六進(jìn)制、字符串、數(shù)組等相關(guān)轉(zhuǎn)換操作技巧,需要的朋友可以參考下
    2021-08-08
  • Java驗(yàn)證日期時(shí)間字符串是否合法的三種方式

    Java驗(yàn)證日期時(shí)間字符串是否合法的三種方式

    判斷日期經(jīng)常合法出現(xiàn)在IO場(chǎng)景下,下面將盡量使用簡(jiǎn)練的思路和代碼呈現(xiàn)給大伙,這篇文章主要給大家介紹了關(guān)于Java驗(yàn)證日期時(shí)間字符串是否合法的三種方式,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • 使用springBoot項(xiàng)目配置文件位置調(diào)整到打包外

    使用springBoot項(xiàng)目配置文件位置調(diào)整到打包外

    這篇文章主要介紹了使用springBoot項(xiàng)目配置文件位置調(diào)整到打包外,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-08-08
  • SpringBoot整合WebSocket的客戶端和服務(wù)端的實(shí)現(xiàn)代碼

    SpringBoot整合WebSocket的客戶端和服務(wù)端的實(shí)現(xiàn)代碼

    這篇文章主要介紹了SpringBoot整合WebSocket的客戶端和服務(wù)端的實(shí)現(xiàn),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • SpringBoot實(shí)現(xiàn)輕量級(jí)動(dòng)態(tài)定時(shí)任務(wù)管控及組件化的操作步驟

    SpringBoot實(shí)現(xiàn)輕量級(jí)動(dòng)態(tài)定時(shí)任務(wù)管控及組件化的操作步驟

    文章介紹了一種在SpringBoot中實(shí)現(xiàn)動(dòng)態(tài)定時(shí)任務(wù)的解決方案,基于COLA架構(gòu)理論,封裝到了組件層,該組件支持類級(jí)別和方法級(jí)別的定時(shí)任務(wù)注冊(cè),并提供了易用性和擴(kuò)展性,組件使用Maven形式引入,并且可以通過YAML配置文件進(jìn)行設(shè)置,感興趣的朋友一起看看吧
    2024-11-11

最新評(píng)論

北京市| 黔西县| 肇州县| 灵石县| 长白| 九龙城区| 西城区| 普格县| 新河县| 阳东县| 尚义县| 常山县| 峡江县| 康定县| 尼木县| 宝坻区| 香港 | 元氏县| 正安县| 皋兰县| 逊克县| 福州市| 房山区| 错那县| 吕梁市| 广平县| 环江| 深泽县| 蓝山县| 永胜县| 阿合奇县| 额敏县| 固阳县| 鹤山市| 察雅县| 新闻| 鹿邑县| 聂荣县| 天气| 安徽省| 绵竹市|