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

深入解析Spring Boot中的@ConfigurationProperties注解

 更新時間:2026年02月13日 09:08:43   作者:java進(jìn)階之路2023  
本文主要介紹了深入解析Spring Boot中的@ConfigurationProperties注解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

在Spring Boot框架中,配置管理是一個核心功能。Spring Boot提供了多種方式來處理外部配置,其中@ConfigurationProperties注解是一個非常強(qiáng)大且靈活的工具。本文將深入探討@ConfigurationProperties注解的概念、用法、工作原理、配置綁定、類型安全以及如何在實(shí)際開發(fā)中應(yīng)用它。

什么是@ConfigurationProperties?

@ConfigurationProperties是Spring Boot提供的一個注解,用于將外部配置屬性綁定到Java對象上。通過使用這個注解,開發(fā)者可以將配置文件(如application.propertiesapplication.yml)中的屬性值自動映射到Java類的字段上,從而實(shí)現(xiàn)配置的集中管理和類型安全。

@ConfigurationProperties的作用

  1. 配置綁定:將配置文件中的屬性值綁定到Java類的字段上,實(shí)現(xiàn)配置的自動映射。
  2. 類型安全:提供類型安全的配置綁定,避免類型轉(zhuǎn)換錯誤。
  3. 復(fù)雜配置:支持復(fù)雜配置結(jié)構(gòu)的綁定,如嵌套對象、集合、Map等。
  4. 配置校驗(yàn):結(jié)合@Valid注解,實(shí)現(xiàn)配置屬性的校驗(yàn)。

@ConfigurationProperties的基本用法

1. 定義配置類

首先,定義一個Java類,用于綁定配置屬性。使用@ConfigurationProperties注解標(biāo)記該類,并指定前綴(prefix)。

示例代碼:

package com.yicrm.biz.config;


import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * <p>
 * uops-service配置
 * </p>
 *
 * @author zhaozhijun
 * @since 2026-01-07
 */

@Data
@Component
@ConfigurationProperties(prefix = "media-service")
public class MediaServiceConfig {

    //短視頻路徑
    private String path;

    //短視頻路徑-特殊租戶
    private String path2;

    //直播路徑
    private String broadcastPath;
    private String broadcastPath2;
    //token
    private String token;

    private String userId;

    private String companyId;
}

解釋:

  • @ConfigurationProperties(prefix = "app"):指定配置屬性的前綴為app
  • @Component:將該類注冊為Spring Bean,使其可以被Spring容器管理。

2. 配置文件

application.propertiesapplication.yml文件中定義配置屬性。

示例代碼(application.properties):

media-service:
  path: https://***.ai/media-service/internal/dataApi/video/getCompanyCoreMetrics
  token: a5a6ae52b97f08e6847bbaf9bc054c13af797525
  userId: 3569
  companyId: 311

3. 啟用配置屬性支持

在Spring Boot應(yīng)用的主類或配置類上,使用@EnableConfigurationProperties注解啟用配置屬性支持。

package com.yicrm;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.context.properties.EnableConfigurationProperties;

/**
 * 啟動程序
 */
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
@EnableConfigurationProperties(AppProperties.class)
public class YiCrmApplication {
    public static void main(String[] args) {
        // System.setProperty("spring.devtools.restart.enabled", "false");
        // 關(guān)閉 PageHelper banner
        System.setProperty("pagehelper.banner", "false");
//        // 設(shè)置無頭模式,避免在無圖形界面的服務(wù)器環(huán)境中出現(xiàn) X11FontManager 初始化錯誤
//        System.setProperty("java.awt.headless", "true");
        SpringApplication.run(YiCrmApplication.class, args);
        System.out.println("(????)??  YI-CRM啟動成功   ?(′?`?)?");
    }
}

到此這篇關(guān)于深入解析Spring Boot中的@ConfigurationProperties注解的文章就介紹到這了,更多相關(guān)SpringBoot @ConfigurationProperties內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java可重入鎖的實(shí)現(xiàn)示例

    Java可重入鎖的實(shí)現(xiàn)示例

    在java中,可重入鎖分為兩種,即synchronized鎖以及ReentrantLock及其實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • SpringBoot登錄認(rèn)證前后端實(shí)現(xiàn)方案:SpringBoot + Mybatis + JWT(圖文實(shí)例)

    SpringBoot登錄認(rèn)證前后端實(shí)現(xiàn)方案:SpringBoot + Mybatis +&

    本文展示如何在Spring生態(tài)系統(tǒng)中整合IOC/DI、MyBatis、MD5加密、Session/Cookie管理、JWT令牌和攔截器,以實(shí)現(xiàn)一個企業(yè)級的認(rèn)證方案,前端使用HTML/CSS/JavaScript/JQuery,后端使用SpringBoot+MyBatis+JWT,通過統(tǒng)一返回結(jié)果封裝和圖形驗(yàn)證碼,提高了API的可維護(hù)性和安全性
    2025-10-10
  • java實(shí)現(xiàn)的RC4加密解密算法示例

    java實(shí)現(xiàn)的RC4加密解密算法示例

    這篇文章主要介紹了java實(shí)現(xiàn)的RC4加密解密算法,結(jié)合具體實(shí)例形式分析了java RC4加密解密算法的實(shí)現(xiàn)與使用技巧,需要的朋友可以參考下
    2017-06-06
  • Java中的SynchronousQueue阻塞隊(duì)列及使用場景解析

    Java中的SynchronousQueue阻塞隊(duì)列及使用場景解析

    這篇文章主要介紹了Java中的SynchronousQueue阻塞隊(duì)列及使用場景解析,SynchronousQueue 是 Java 中的一個特殊的阻塞隊(duì)列,它的主要特點(diǎn)是它的容量為0,這意味著 SynchronousQueue不會存儲任何元素,需要的朋友可以參考下
    2023-12-12
  • 如何使用JDBC實(shí)現(xiàn)工具類抽取

    如何使用JDBC實(shí)現(xiàn)工具類抽取

    這篇文章主要介紹了如何使用JDBC實(shí)現(xiàn)工具類抽取,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • java中hashmap的底層數(shù)據(jù)結(jié)構(gòu)與實(shí)現(xiàn)原理

    java中hashmap的底層數(shù)據(jù)結(jié)構(gòu)與實(shí)現(xiàn)原理

    Hashmap是java面試中經(jīng)常遇到的面試題,大部分都會問其底層原理與實(shí)現(xiàn),本人也是被這道題問慘了,為了能夠溫故而知新,特地寫了這篇文章,以便時時學(xué)習(xí)
    2021-08-08
  • 一文詳細(xì)地講解Java異常及要如何處理

    一文詳細(xì)地講解Java異常及要如何處理

    在Java中異常處理是一種重要的編程概念,用于處理程序執(zhí)行過程中可能出現(xiàn)的錯誤或異常情況,這篇文章主要介紹了Java異常及要如何處理的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-09-09
  • Mac使用Idea配置傳統(tǒng)SSM項(xiàng)目(非maven項(xiàng)目)

    Mac使用Idea配置傳統(tǒng)SSM項(xiàng)目(非maven項(xiàng)目)

    本文主要介紹了Mac使用Idea配置傳統(tǒng)SSM項(xiàng)目(非maven項(xiàng)目),將展示如何設(shè)置項(xiàng)目結(jié)構(gòu)、添加依賴關(guān)系等,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • Mybatis的插件運(yùn)行原理及如何編寫一個插件

    Mybatis的插件運(yùn)行原理及如何編寫一個插件

    這篇文章主要介紹了Mybatis的插件運(yùn)行原理及如何編寫一個插件 ,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • 一文搞懂Java中的序列化與反序列化

    一文搞懂Java中的序列化與反序列化

    序列化是將對象轉(zhuǎn)換成二進(jìn)制字節(jié)流的過程;反序列化是從二進(jìn)制字節(jié)流中恢復(fù)對象的過程。文中降通過示例詳解二者的使用與區(qū)別,需要的可以參考一下
    2022-08-08

最新評論

拉萨市| 长乐市| 大荔县| 蓝山县| 沧源| 霞浦县| 建平县| 思南县| 井研县| 长沙县| 洪泽县| 琼结县| 鹤峰县| 固阳县| 涞源县| 双牌县| 尼玛县| 毕节市| 申扎县| 长宁县| 玉树县| 石家庄市| 共和县| 蒙城县| 清徐县| 门源| 灌云县| 西峡县| 屯昌县| 安乡县| 遂宁市| 吉木乃县| 安溪县| 茶陵县| 桂东县| 灵璧县| 扶余县| 天镇县| 政和县| 社会| 体育|