關(guān)于springboot加載yml配置文件的no字段自動(dòng)轉(zhuǎn)義問(wèn)題
加載yml配置文件的no字段自動(dòng)轉(zhuǎn)義
項(xiàng)目上線了才發(fā)現(xiàn)一個(gè)字段被轉(zhuǎn)義了,如下圖:
本來(lái)應(yīng)該會(huì)拿到no字段和數(shù)據(jù)進(jìn)行比對(duì)的,結(jié)果發(fā)現(xiàn)比對(duì)完的數(shù)據(jù)這個(gè)字段全是null,debug才發(fā)現(xiàn)這個(gè)字段這么寫(xiě)在加載yml文件之后自動(dòng)變成了"false",第一次發(fā)現(xiàn)這個(gè)問(wèn)題,修改很方便,把yml文件里面這個(gè)no,換成'no'就可以不被轉(zhuǎn)義成"false"了,謹(jǐn)以此提醒,小錯(cuò)誤導(dǎo)致臨時(shí)調(diào)整一次上線。。。。
springboot配置文件自動(dòng)轉(zhuǎn)譯的坑
在使用SpringBoot配置文件時(shí)遇到的問(wèn)題,當(dāng)使用yaml作為配置文件時(shí)將batchEmail.task.switch 設(shè)置為 ON
#批量定時(shí)發(fā)送郵件配置 batchEmail: task: size: 1000 switch: ON
則在JAVA代碼中通過(guò) @Value取值
@Value("${batchEmail.task.switch}") private String batchEmailTaskSwitch;
會(huì)得到自動(dòng)轉(zhuǎn)譯的Boolean值
經(jīng)過(guò)測(cè)試,若想取得字符串"ON" 須將配置文件做如如下修改
#批量定時(shí)發(fā)送郵件配置 batchEmail: task: size: 1000 switch: "ON"
ON加了雙引號(hào)后,取值正常
小結(jié)一下
約定大于配置,這是springboot最大的特點(diǎn),所以在使用配置文件定義屬性時(shí),應(yīng)該嚴(yán)格遵循配置文件的格式要求,定義的字符串必須加雙引號(hào),否則想yes、no、off、on之類的字符會(huì)被轉(zhuǎn)譯為Boolean串。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
springboot如何獲取接口下所有實(shí)現(xiàn)類
這篇文章主要介紹了springboot如何獲取接口下所有實(shí)現(xiàn)類問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09SpringBoot?項(xiàng)目打成?jar后加載外部配置文件的操作方法
這篇文章主要介紹了SpringBoot?項(xiàng)目打成?jar后加載外部配置文件的操作方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03SpringBoot?配置多個(gè)JdbcTemplate的實(shí)現(xiàn)步驟
本文介紹了在SpringBoot中配置多個(gè)JdbcTemplate的方法,包括創(chuàng)建項(xiàng)目、添加依賴、配置數(shù)據(jù)源和多個(gè)JdbcTemplate的使用,感興趣的可以了解一下2024-11-11Eclipse 開(kāi)發(fā)java 出現(xiàn)Failed to create the Java Virtual Machine錯(cuò)誤
這篇文章主要介紹了Eclipse 開(kāi)發(fā)java 出現(xiàn)Failed to create the Java Virtual Machine錯(cuò)誤解決辦法的相關(guān)資料,需要的朋友可以參考下2017-04-04歸并算法之有序數(shù)組合并算法實(shí)現(xiàn)
這篇文章主要介紹了歸并算法之有序數(shù)組合并算法實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2017-07-07解決BigDecimal轉(zhuǎn)long丟失精度的問(wèn)題
這篇文章主要介紹了解決BigDecimal轉(zhuǎn)long丟失精度的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-12-12