国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Spring Boot】Spring Boot配置文件詳情

這篇具有很好參考價值的文章主要介紹了【Spring Boot】Spring Boot配置文件詳情。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

?Spring Boot是一個開源的Java框架,用于快速構(gòu)建應(yīng)用程序和微服務(wù)。它基于Spring Framework,通過自動化配置和約定優(yōu)于配置的方式,使開發(fā)人員可以更快地啟動和運行應(yīng)用程序。Spring Boot提供了許多開箱即用的功能和插件,包括嵌入式Web服務(wù)器、安全性、數(shù)據(jù)訪問、緩存、測試和監(jiān)控等,極大地簡化了開發(fā)人員的工作。同時,Spring Boot還提供了可擴展性和可定制性,讓開發(fā)人員可以根據(jù)特定的需求完全自定義應(yīng)用程序。本文就 SpringBoot 項目中配置文件的作用以及兩種不同形式的配置文件的使用分別進行闡述。
【Spring Boot】Spring Boot配置文件詳情,JavaEE編程之路,spring boot,java,后端



1 配置文件

配置文件是一種存儲應(yīng)用程序配置信息的文件,它包含了應(yīng)用程序所需要的各種參數(shù)、選項和設(shè)置。
【Spring Boot】Spring Boot配置文件詳情,JavaEE編程之路,spring boot,java,后端

2 為什么需要配置文件?

Spring Boot 配置文件是一個特殊的文件,用來配置 Spring Boot 應(yīng)用程序的行為。在 Spring Boot 應(yīng)用程序中,可以使用多種配置文件格式,包括 properties、YAML、XML 等。配置文件通常包含應(yīng)用程序的參數(shù)、數(shù)據(jù)庫連接等信息,可以讓應(yīng)用程序在不同的環(huán)境中運行,例如開發(fā)、測試、生產(chǎn)等環(huán)境。

項目中重要的信息都是在配置文件中去設(shè)置的,例如:

  • 數(shù)據(jù)庫的連接信息,包括用戶名和密碼等;
  • 項目的啟動端口;
  • 第三方系統(tǒng)的調(diào)用密鑰等信息;
  • 用于發(fā)現(xiàn)和定位問題的普通日志和異常日志等。

配置文件的作用在于:

  1. 靈活性:通過配置文件,用戶可以根據(jù)自己的需求來修改應(yīng)用程序的參數(shù),而不必修改應(yīng)用程序的代碼。

  2. 維護性:將應(yīng)用程序的參數(shù)存儲在配置文件中,可以使得維護者更容易理解應(yīng)用程序的功能和行為。

  3. 共享性:配置文件可以共享給多個用戶或多個應(yīng)用程序使用,從而降低了編寫重復(fù)代碼的工作量。

  4. 安全性:一些敏感信息如數(shù)據(jù)庫連接字符串、密碼等可以單獨存儲在配置文件中,可以防止這些信息被惡意利用或修改。

Spring Boot常見的配置文件有兩種:.properties or .yml, 理論上來說,允許兩種格式的配置文件可以同時存在。但是,在實際項目開發(fā)中,為了可以更好的維護并降低故障發(fā)生的概率,我們通常只使用其中一種格式的配置文件。需要特別注意的是,properties 格式的配置的優(yōu)先級大于 yml 格式的配置文件。
【Spring Boot】Spring Boot配置文件詳情,JavaEE編程之路,spring boot,java,后端

3 properties 格式的配置文件

properties 的語法是用鍵值對的形式組織的,key 與 value 之間使用 “=” 連接,并不需要多余的空格或者縮進,示例代碼如下:

# 端口配置
server.port=8888

# 數(shù)據(jù)庫連接配置
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/databaseName?characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=root

# 自定義配置項
myTestConfigName=Huang

如何讀取配置文件?
若想要主動讀取配置文件的信息,可以使用@Value 注解,該注解使用${} 格式讀取,以下代碼演示如何讀取上述代碼中的自定義配置項 myConfigName=Huang

    @Value("${myTestConfigName}")  // 獲取自定義配置項
    private String myTestConfigName;

    @PostConstruct
    public void postConstruct() {
        System.out.println("myTestConfigName: " + myTestConfigName);
    }

【Spring Boot】Spring Boot配置文件詳情,JavaEE編程之路,spring boot,java,后端

對于初學(xué)者來說,properties格式的配置文件由于不需要各種縮進和空格的格式控制,因此,可以避免很多錯誤。但是,properties格式對中文支持并不好,會出現(xiàn)亂碼的情況。其次,由于其是key=value形式存儲的,會導(dǎo)致代碼有很多冗余信息:
【Spring Boot】Spring Boot配置文件詳情,JavaEE編程之路,spring boot,java,后端
要想解決上述問題,可以使用 yml 格式的配置文件解決~

4 yml 格式的配置文件

YAML(全稱 Yet Another Markup Language, 另一種標(biāo)記語言)是一種層級的、非常易讀的標(biāo)記語言。經(jīng)常用于不同編程語言之間的數(shù)據(jù)傳輸。

  • yml 是?個可讀性?,寫法簡單、易于理解,它的語法和 JSON 語?類似。
  • yml ?持更多的數(shù)據(jù)類型,它可以簡單表達清單(數(shù)組)、散列表,標(biāo)量等數(shù)據(jù)形態(tài)。它使?空?符號縮進和?量依賴外觀的特?,特別適合?來表達或編輯數(shù)據(jù)結(jié)構(gòu)、各種配置?件等。
  • yml ?持更多的編程語?,它不?是 Java 中可以使?在 Golang、PHP、Python、Ruby、JavaScript、Perl 中。

4.1 yml 基本語法

yml 是樹形結(jié)構(gòu)的配置?件,它的基礎(chǔ)語法是“key: value”,注意 key 和 value 之間使?英?冒號加空格的?式組成的,其中的空格不可省略。

使用 yml 格式配置端口號和數(shù)據(jù)庫連接信息的代碼如下:

# 優(yōu)先級 properties > yml 格式, 但是 yml 格式能夠解決中文亂碼問題, 并且能夠適配多種編程語言
server:
  port: 8080

# 數(shù)據(jù)庫連接配置
spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/databaseName?characterEncoding=utf8
    username: root
    password: root

相較 properties,代碼冗余度降低~

4.2 yml 配置不同類型及null

# 字符串
string.value: Hello

# 布爾值,truefalse
boolean.value1: true
boolean.value2: false

# 整數(shù)
int.value1: 77
int.value2: 0b1010_0111_0100_1010_1110 # ?進制

# 浮點數(shù)
float.value1: 3.14159
float.value2: 314159e-5 # 科學(xué)計數(shù)法

# Null,~代表null
null.value: ~

需要特別注意的是,字符串類型是否帶有引號,讀取出來是有區(qū)別的~

# 字符串
string:
  myString1: 你好, \n世界
  myString2: '你好, \n世界'
  myString3: "你好, \n世界"

讀取配置信息的代碼如下:

    @Value("${string.myString1}")
    private String myString01;

    @Value("${string.myString2}")
    private String myString02;

    @Value("${string.myString3}")
    private String myString03;

    @PostConstruct
    public void postConstruct() {
        System.out.println("string.myString1: " + myString01 + "\n" + 
                "string.myString2: " + myString02 + "\n" +
                "string.myString3: " + myString03 + "\n");
    }

【Spring Boot】Spring Boot配置文件詳情,JavaEE編程之路,spring boot,java,后端
可見,只有帶有雙引號的字符串,轉(zhuǎn)義字符才能被正常解析。對于無引號和單引號的情況,轉(zhuǎn)義字符會原封不動的打印出來~

4.3 使用 yml 配置對象

在 yml 配置對象示例如下:

# 自定義對象
student:
  id: 1
  name: "黃小黃"
  age: 20

也可以采用行內(nèi)的寫法,作用與上述代碼一致:

student: {id: 1,name: "黃小黃",age: 20}

如果想要主動讀取配置對象的信息,則不能使用 @Value 注解,可以采用 @ConfigurationProperties 來讀取,具體實現(xiàn)如下:

@Component
@ConfigurationProperties("student")
@Data
public class Student {
    private int id;
    private String name;
    private int age;
}

在以上代碼中,getter、setter以及toString方法均通過lombok實現(xiàn)。需要注意的是@ConfigurationProperties注解中的內(nèi)容,需要與配置文件中對象的key相同。

調(diào)用類的代碼如下:

    @Autowired
    private Student student;

    @PostConstruct
    public void postConstruct() {
        System.out.println("student: " + student);
    }

【Spring Boot】Spring Boot配置文件詳情,JavaEE編程之路,spring boot,java,后端

4.4 使用 yml 配置集合

同樣地,使用 yml 配置 list 集合也有兩種方式:

dbtypes:
  name:
    - mysql
    - sqlserver
    - db2

行內(nèi)寫法如下:

dbtypes: {name: [mysql,sqlserver,db2]}

與配置集合相同,也可以采用 @ConfigurationProperties 來讀取,具體實現(xiàn)如下:

@Component
@ConfigurationProperties("dbtypes")
@Data
public class ListConfig {

    private List<String> name;
}

調(diào)用類的代碼如下:

@Component
public class ReadListYml {

    @Autowired
    private ListConfig listConfig;

    @PostConstruct
    public void postConstruct() {
        System.out.println(listConfig.getName());
    }
}

【Spring Boot】Spring Boot配置文件詳情,JavaEE編程之路,spring boot,java,后端

更多系統(tǒng)配置項,請查閱官網(wǎng):https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#appendix.application-properties


5 Spring Boot讀取指定的配置文件

SpringBoot可以讀取多個配置文件,其中默認(rèn)的是application.properties或application.yml。但有時候我們需要讀取指定的配置文件,可以通過以下步驟實現(xiàn):

  1. 創(chuàng)建新的配置文件,比如application-dev.properties或application-dev.yml,可以根據(jù)需要命名。

  2. 在src/main/resources目錄下創(chuàng)建一個名為config的文件夾。

  3. 將新的配置文件放在config文件夾中。

  4. 在application.properties或application.yml中添加如下配置:

spring.profiles.active=dev

其中dev可以替換成新配置文件的名稱(不帶擴展名),這樣SpringBoot就會加載config文件夾下對應(yīng)的配置文件。

  1. 在Java代碼中可以通過@Value注解獲取新配置文件中的屬性值,例如:
@Value("${my.property}")
private String myProperty;

其中my.property是新配置文件中的屬性名。


寫在最后

?本文被 JavaEE編程之路 收錄點擊訂閱專欄 , 持續(xù)更新中。
?以上便是本文的全部內(nèi)容啦!創(chuàng)作不易,如果你有任何問題,歡迎私信,感謝您的支持!

【Spring Boot】Spring Boot配置文件詳情,JavaEE編程之路,spring boot,java,后端文章來源地址http://www.zghlxwxcb.cn/news/detail-519617.html

到了這里,關(guān)于【Spring Boot】Spring Boot配置文件詳情的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • javaee spring配置文件bean標(biāo)簽詳解

    bean標(biāo)簽中添加scope屬性,設(shè)置bean對應(yīng)對象生成規(guī)則. scope = “singleton” 單例,默認(rèn)值,適用于實際開發(fā)中的絕大部分情況. scope=“prototype” 多例,適用于struts2中的action配置 注意: 只對單例有效,設(shè)置scope=\\\"singleton\\\"時測試 延時創(chuàng)建屬性. lazy-init=“false” 默認(rèn)值,不延遲創(chuàng)建,即在啟動時

    2024年02月11日
    瀏覽(35)
  • 【Spring Boot】Spring Boot日志詳情:基于lombok的日志輸出

    【Spring Boot】Spring Boot日志詳情:基于lombok的日志輸出

    日志文件是一種記錄計算機系統(tǒng)或應(yīng)用程序運行狀態(tài)和活動的文件。日志文件可以包含各種重要信息,如錯誤報告、警告、事件、用戶活動等。日志文件通常用于故障排除、性能優(yōu)化、安全審計和法律合規(guī)等方面。日志文件可以在本地存儲,也可以通過網(wǎng)絡(luò)傳輸?shù)竭h程服務(wù)器

    2024年02月12日
    瀏覽(17)
  • Spring —— Spring Boot 配置文件

    Spring —— Spring Boot 配置文件

    JavaEE傳送門 JavaEE Spring —— Bean 作用域和生命周期 Spring —— Spring Boot 創(chuàng)建和使用 如果沒有配置信息, Spring Boot 項目就不能連接和此操作數(shù)據(jù)庫, 甚至是不能保存可以用于排查問題的關(guān)鍵日志, 配置文件的作用是非常重要的. 系統(tǒng)使用的配置文件 (系統(tǒng)配置文件), 如端口號的配

    2023年04月09日
    瀏覽(20)
  • 【Spring Boot學(xué)習(xí)一】創(chuàng)建項目 && Spring Boot的配置文件

    【Spring Boot學(xué)習(xí)一】創(chuàng)建項目 && Spring Boot的配置文件

    目錄 一、安裝插件 二、創(chuàng)建Spring Boot項目 1、創(chuàng)建項目 1.1?使用IDEA創(chuàng)建 ?1.2?網(wǎng)頁版本創(chuàng)建 2、項目目錄介紹與運行 三、Sping Boot的配置文件(重點) ??1、.properties配置文件 (1)基礎(chǔ)語法:Key = value (2)讀取配置?件中的內(nèi)容,@Value 注解使?“${}”的格式讀取; ??2、.y

    2024年02月16日
    瀏覽(37)
  • Spring Boot配置文件

    Spring Boot配置文件

    日升時奮斗,日落時自省? 目錄 1、配置文件作用 2、配置文件格式 2.1、使用注意 3、properties配置文件 3.1、注釋中文問題 3.2、properties語法格式 3.3、讀取配置文件 3.3.1、Value讀取 3.3.2、PropertySource讀取 3.3.3、原生方式讀取配置文件 3.4、properties缺點分析 4、yml配置文件 4.1、優(yōu)點

    2024年02月01日
    瀏覽(21)
  • 【Spring Boot】掌握Spring Boot:深入解析配置文件的使用與管理

    【Spring Boot】掌握Spring Boot:深入解析配置文件的使用與管理

    ?? 博客主頁:從零開始的-CodeNinja之路 ? 收錄文章:【Spring Boot】掌握Spring Boot:深入解析配置文件的使用與管理 ??歡迎大家點贊??評論??收藏?文章 配置文件主要是為了解決硬編碼帶來的問題,把可能會發(fā)生改變的信息,放在?個集中的地方,當(dāng)我們啟 動某個程序時,應(yīng)用程

    2024年04月23日
    瀏覽(20)
  • Spring Boot讀取配置文件

    Spring Boot 是一種用于快速構(gòu)建基于Spring的應(yīng)用程序的框架,它提供了很多便利的功能和約定,使開發(fā)者可以快速搭建、配置和部署應(yīng)用程序。在Spring Boot中,讀取配置文件是一個非常常見的任務(wù),本文將介紹如何在Spring Boot應(yīng)用程序中讀取配置文件,并使用讀取到的配置信息。

    2024年02月07日
    瀏覽(20)
  • Spring Boot的配置文件

    Spring Boot的配置文件

    Spring Boot中的配置文件有兩種:properties格式和yml格式 一、propertise格式 propertise格式是Springboot默認(rèn)的配置文件的格式,它才有鍵值對key=value的方式存儲配置信息,有系統(tǒng)key值和自定義key值兩類。 系統(tǒng)key值就是Spring boot約定的一些key值,通過設(shè)置這些key對應(yīng)的value值可以配置對應(yīng)

    2024年02月09日
    瀏覽(18)
  • Spring Boot 系列2 -- 配置文件

    Spring Boot 系列2 -- 配置文件

    目錄 1. 配置文件的作用 2. 配置文件的格式 3.?properties 配置文件說明 3.1 properties 基本語法 3.2 讀取配置文件 3.3 properties 缺點 4.yml 配置文件說明 4.1 yml 基本語法 4.2 yml 使用進階 4.2.1 yml 配置不同數(shù)據(jù)類型及 null 4.2.2?yml 配置讀取 4.2.3?注意事項:value 值加單雙引號 4.2.4 配置對象

    2024年02月15日
    瀏覽(25)
  • Spring Boot 配置文件和日志

    Spring Boot 配置文件和日志

    目錄 配置文件格式 properties配置文件說明 1.properties基本語法 2.讀取配置文件 3.properties缺點 yml配置文件說明 1.yml基本語法 2.配置不同數(shù)據(jù)類型 3.字符串特殊情況 4.配置對象 properties和yml對比 日志 日志的使用 日志級別 日志持久化 Lombok Lombok原理解釋 Spring中配置文件有很重要的

    2024年01月19日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包