SpringBoot 屬性值注入的方式

2021-08-21 17:09:18 字數 1327 閱讀 4191

1、@configurationproperties和@value:@configurationproperties預設從全域性配置檔案中獲取值

@configurationproperties

@value

功能批量注入配置檔案中的屬性值

乙個個的注入值

鬆散繫結

支援不支援

spel

不支援支援

jsr303資料校驗

支援不支援

複雜型別封裝

支援不支援

鬆散繫結:駝峰式、下劃線(_)、短橫線(-)均可注入

資料校驗示例:@validated註解表示需要進行資料校驗,@email表示屬性值必須是郵件格式

@component

@validated

@configurationproperties(prefix = "person")

public class person

public string getname()

}

複雜型別封裝:物件、map、陣列

2、@propertysource和@importresource

①@propertysource:載入指定配置檔案,可以在springboot預設的兩個全域性配置檔案之外自定義屬性配置檔案

@component

@propertysource(value = )

@configurationproperties(prefix = "person")

public class person

public string getname()

}

@importresource(value = )

public static void main(string args)

}

beans.xml:

<?xml version="1.0" encoding="utf-8"?>

@configuration

public class myconfig

}

3、配置檔案佔位符

①配置檔案中使用隨機數:$、$、$、$、$

person.age=$

person.dos.age=$

②配置檔案中獲取已有的配置,若沒有可以指定預設值

person.age=$

person.dos.age=$

springboot屬性注入異常之謎

bean configurationproperties prefix aa public aaobj aaobj 如上aaobj只有乙個屬性 map bb 通過測試我們可以發現aaobj.bb 這個問題當時困擾了我一兩個小時,後來因為有其他工作就直接把classpath下的配置檔案刪了才算繞過去,...

spring 注入屬性的值

1 注入屬性的值 重要 1.1 基本概念 以某個 user 類為例 public class user 然後,在spring的配置檔案中,將 節點寫成成對的標籤,並新增 子節點 如果有多個屬性需要注入值,則每個屬性都需要有set方法,並且,在 下使用多個 節點進行配置。注意 在配置 節點時,其中的 ...

spring boot 給靜態變數注入值

問題 public class bisfrontfileutil private static string ccbipaddress value private static int ccbipport public static boolean putfiletofront string fil...