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

Spring的@ConfigurationProperties注解詳解

 更新時(shí)間:2023年11月22日 10:38:41   作者:杜小舟  
這篇文章主要介紹了Spring的@ConfigurationProperties注解詳解,@ConfigurationProperties該注解是用來獲取yml或者properties配置文件的配置信息,下面根據(jù)一些配置信息給出案例代碼進(jìn)行講解,需要的朋友可以參考下

前言

本篇文章主要介紹SringBoot中的@ConfigurationProperties注解,該注解是用來獲取yml或者properties配置文件的配置信息,下面根據(jù)一些配置信息給出案例代碼進(jìn)行講解。

@ConfigurationProperties 屬性介紹

屬性名稱介紹
prefix、value指定屬性前綴
ignoreInvalidFields是否忽略無效字段,如果設(shè)置為true,則在綁定過程中遇到無效字段不會拋出異常
下面有對該屬性值的專門介紹
默認(rèn)是false
ignoreUnknownFields是否忽略未知字段,如果設(shè)置為true,則在綁定過程中遇到未知字段不會拋出異常
下面有對該屬性值的專門介紹
默認(rèn)是true

案例代碼介紹

下面在yml配置文件中配置:

user:
  name: "張三"
  age: 18
  hobbies: 
    - "看書"
    - "寫代碼"

代碼實(shí)現(xiàn):

@Component
@ConfigurationProperties(prefix = "user")
public class UserInfo {
    private String name;
    private int age;
    private List<String> hobbies;
}

這樣,就能從配置文件中讀取到配置的信息。

ignoreInvalidFields 屬性用法

如果,我把ignoreInvalidFields屬性值設(shè)置為false(ignoreInvalidFields屬性值默認(rèn)值就是fasle),然后把yml配置文件中的age修改成字符串類型,這樣配置文件中的類型和Class中的類型不一致就會出現(xiàn)錯(cuò)誤,以下是代碼案例

user:
  name: "張三"
  age: 18
  hobbies: 
    - "看書"
    - "寫代碼"

代碼實(shí)現(xiàn):

@Component
@ConfigurationProperties(prefix = "user", ignoreInvalidFields = false)
public class UserInfo {
    private String name;
    private int age;
    private List<String> hobbies;
}

錯(cuò)誤如下:

***************************
APPLICATION FAILED TO START
***************************

Description:

Failed to bind properties under 'user.age' to int:

    Property: user.age
    Value: 18歲
    Origin: class path resource [application.yml] - 10:8
    Reason: failed to convert java.lang.String to int (caused by java.lang.NumberFormatException: For input string: "18歲")

Action:

Update your application's configuration

ignoreUnknownFields 屬性用法

這里,我把ignoreUnknownFields屬性值設(shè)置為false(ignoreUnknownFields屬性值默認(rèn)值是true),然后把UserInfo文件中的hobbies變量刪除,這樣配置文件中的類型和Class中的屬性就會不一致,接下來就會出現(xiàn)錯(cuò)誤,以下是代碼案例

user:
  name: "張三"
  age: 18
  hobbies: 
    - "看書"
    - "寫代碼"

代碼實(shí)現(xiàn):

@Component
@ConfigurationProperties(prefix = "user", ignoreUnknownFields = false)
public class UserInfo {
    private String name;
    private int age;
}

錯(cuò)誤如下:

***************************
APPLICATION FAILED TO START
***************************

Description:

Binding to target [Bindable@31e2232f type = com.demo.UserInfo, value = 'provided', annotations = array<Annotation>[@org.springframework.boot.context.properties.ConfigurationProperties(ignoreInvalidFields=false, ignoreUnknownFields=false, prefix=user, value=user)]] failed:

    Property: user.hobbies[0]
    Value: 看書
    Origin: class path resource [application.yml] - 12:7
    Reason: The elements [user.hobbies[0],user.hobbies[1]] were left unbound.
    Property: user.hobbies[1]
    Value: 寫代碼
    Origin: class path resource [application.yml] - 13:7
    Reason: The elements [user.hobbies[0],user.hobbies[1]] were left unbound.

Action:

Update your application's configuration

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

相關(guān)文章

最新評論

安阳市| 文成县| 宣化县| 乐清市| 章丘市| 厦门市| 那坡县| 桐柏县| 颍上县| 杭锦旗| 花莲市| 云南省| 宣威市| 垦利县| 印江| 雅安市| 吴江市| 乌鲁木齐县| 宝兴县| 闵行区| 平南县| 宁安市| 富源县| 临澧县| 河东区| 祁门县| 关岭| 仙游县| 汝城县| 南和县| 白沙| 五原县| 临沂市| 开阳县| 高雄市| 全椒县| 兴山县| 灵川县| 沈阳市| 乾安县| 南乐县|