您好,登錄后才能下訂單哦!
本篇內容介紹了“SpringBoot中的@ConfgurationProperties注解怎么使用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface ConfigurationProperties {
@AliasFor("prefix")
String value() default "";
@AliasFor("value")
String prefix() default "";
boolean ignoreInvalidFields() default false;
boolean ignoreUnknownFields() default true;
}
向注解中傳入配置文件中的前綴名,如果配置文件如下:
myConfigs: config1: field1: f1 field2: f2 field3: f3
那么代碼中的配置類應該這樣寫:
@Component
@ConfigurationProperties("myConfigs.config1")
public class MyConfig1 {
String field1;
String field2;
String field3;
}
如上所示,field1, field2, field3三個屬性就被綁定到了對象上。
注意到我們使用了@Component,實際上我們使用配置類都是將其注入到其他類中,所以我們往往將其注冊為Bean。
ignoreInvalidFields默認為false,不合法的屬性的屬性會默認拋出異常;
ignoreUnknownFields默認為true, 未能識別的屬性會被忽略(所以打錯了名字就會被忽略了)
@ConfigurationProperties(prefix="config.prefix", ignoreInvalidFields=true, ignoreUnknownFields=false)
public class MyConfig {
// fields
}
Spring Boot的綁定規則相當寬松,myField, my-field, my_field等都能識別綁定到myField上。
可以給字段設定默認值,這樣配置中沒有傳入時會使用默認值。
@ConfigurationProperties("your.prefix")
public class YourConfig {
private String field = "Default"
// setter
}
類的字段必須要有public訪問權限的setter方法。
在很多情況下public的setter方法時必須的,使用IDEA的話,這里推薦Alt+Insert(Windows, Mac使用Alt+n)生成;當然,想使用Lombok也可以
“SpringBoot中的@ConfgurationProperties注解怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。