SpringBoot高級配置之臨時屬性、配置文件、日志、多環(huán)境配置詳解
一、臨時屬性設置
1、帶屬性啟動SpringBoot
例如修改端口:
java -jar springboot.jar --server.port=80
攜帶多個屬性啟動SpringBoot,屬性間使用空格分隔
2、在idea中修改臨時配置
3、還可以通過編程修改參數(shù)
不帶參數(shù)啟動springboot程序
二、配置文件分類
1、SpringBoot中4級配置文件
1級: file : config/application.yml 最高
2級: file : application.yml
3級: classpath: config/ application.yml
4級: classpath: application.yml 最低
作用:
1級與2級留做系統(tǒng)打包后設置通用屬性,1級常用于運維經(jīng)理進行線上整體項目部署方案調(diào)控
3級與4級用于系統(tǒng)開發(fā)階段設置通用屬性,3級常用于項目經(jīng)理進行整體項目屬性調(diào)控
多層級配置文件間的屬性采用疊加并覆蓋的形式作用于程序
2、自定義配置文件
通過啟動參數(shù)加載指定文件路徑下的配置文件,properties與ymll文件格式均支持
通過啟動參數(shù)加載指定文件路徑下的配置文件時可以加載多個配置
多配置文件常用于將配置進行分類,進行獨立管理,或?qū)⒖蛇x配置單獨制作便于上線更新維護
3、自定義配置文件——重要說明
單服務器項目:使用自定義配置文件需求較低
多服務器項目:使用自定義配置文件需求較高,將所有配置放置在一個目錄中,統(tǒng)一管理
基于SpringCloud技術(shù),所有的服務器將不再設置配置文件,而是通過配置中心進行設定,動態(tài)加
載配置信息
總結(jié):
1. SpringBoot在開發(fā)和運行環(huán)境均支持使用臨時參數(shù)修改工程配置
2. SpringBoot支持4級配置文件,應用于開發(fā)與線上環(huán)境進行配置的靈活設置
3. SpringBoot支持使用自定義配置文件的形式修改配置文件存儲位置
4.基于微服務開發(fā)時配置文件將使用配置中心進行管理
三:多環(huán)境開發(fā)
1、多環(huán)境開發(fā)yaml版(一個配置文件)
2、多環(huán)境開發(fā)yaml版(多個個配置文件)
1、主啟動配置文件application. yml
2、環(huán)境分類配置文件application-pro . yml
3、環(huán)境分類配置文件application-dev . yml
4、環(huán)境分類配置文件application-test.yml
3、多環(huán)境開發(fā)properties版(多個個配置文件)
1、主啟動配置文件application.properties
2、環(huán)境分類配置文件application-pro.properties
3、 環(huán)境分類配置文件application-dev .properties
4、環(huán)境分類配置文件application-test.properties
4、多環(huán)境開發(fā)獨立配置文件書寫技巧
根據(jù)功能對配置文件中的信息進行拆分,并制作成獨立的配置文件,命名規(guī)則如下
application-devDB.yml
application-devRedis.yml
application-devMVC.yml
使用include屬性在激活指定環(huán)境的情況下,同時對多個環(huán)境進行加載使其生效,多個環(huán)境間使用
逗號分隔
當主環(huán)境dev與其他環(huán)境有相同屬性時,主環(huán)境屬性生效;其他環(huán)境中有相同屬性時,最后加載的
環(huán)境屬性生效
從SpringBoot2.4版開始使用group屬性替代include屬性,降低了配置書寫量
使用group屬性定義多種主環(huán)境與子環(huán)境的包含關(guān)系
四:多環(huán)境開發(fā)控制
1、Maven與SpringBoot多環(huán)境兼容
2、SpringBoot中引用Maven屬性
3、執(zhí)行Maven打包指令,并在生成的boot打包文件.jar文件中查看對應信息
總結(jié):
1.當Maven與SpringBoot同時對多環(huán)境進行控制時,以Mavn為主,SpringBoot使用@..@占位符
讀取Maven對應的配置屬性值
2.基于SpringBoot讀取Maven配置屬性的前提下,如果在Idea下測試工程時pom.xml每次更新需
要手動compile方可生效
五、日志
1、日志基礎(chǔ)
添加日志記錄操作
設置日志輸出級別
設置日志組,控制指定包對應的日志輸出級別,也可以直接控制指定包對應的日志輸出級別
日志級別:
TRACE:運行堆棧信息,使用率低
DEBUG:程序員調(diào)試代碼使用
INFO:記錄運維過程數(shù)據(jù)
WARN:記錄運維過程報警數(shù)據(jù)
ERROR:記錄錯誤堆棧信息
FATAL:災難信息,合并計入ERROR
優(yōu)化日志對象創(chuàng)建代碼
使用lombok提供的注解@Slf4j簡化開發(fā),減少日志對象的聲明操作
總結(jié):
1.日志用于記錄開發(fā)調(diào)試與運維過程消息
2.日志的級別共6種,通常使用4種即可,分別是DEBUG,INFO,WARN ,ERROR
3.可以通過日志組或代碼包的形式進行日志顯示級別的控制
2、日志輸出格式控制
日志輸出格式
設置日志輸出格式
%d:日期
%m:消息
%n:換行
3、日志文件
設置日志文件(將日志輸出到文件中)
日志文件詳細配置(設置文件大小,超過配置,自動寫入下一個配置)
到此這篇關(guān)于SpringBoot高級配置之臨時屬性、配置文件、日志、多環(huán)境配置的文章就介紹到這了,更多相關(guān)SpringBoot臨時屬性內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java 實戰(zhàn)練手項目之酒店管理系統(tǒng)的實現(xiàn)流程
讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+SSM+jsp+mysql+maven實現(xiàn)一個酒店管理系統(tǒng),大家可以在過程中查缺補漏,提升水平2021-11-11Springboot整合RabbitMQ實現(xiàn)發(fā)送驗證碼的示例代碼
這篇文章主要介紹了Springboot整合RabbitMQ實現(xiàn)發(fā)送驗證碼的功能,基于AMQP協(xié)議實現(xiàn)的消息隊列,它是一種應用程序之間的通信方法,消息隊列在分布式系統(tǒng)開 發(fā)中應用非常廣泛,需要的朋友可以參考下2022-02-02mybatis-plus阻止全表更新與刪除的實現(xiàn)
BlockAttackInnerInterceptor 是mybatis-plus的一個內(nèi)置攔截器,用于防止惡意的全表更新或刪除操作,本文主要介紹了mybatis-plus阻止全表更新與刪除的實現(xiàn),感興趣的可以了解一下2023-12-12