Spring中@Value設(shè)置默認值問題解決
問題描述
使用@Value注解將變量進行自動注入的時候,經(jīng)常會出現(xiàn)的一個問題就是我們可能會由于在配置參數(shù)中忘記設(shè)置該參數(shù)造成整個項目報錯,其實我們可以通過給被@Value注解作用的變量進行注入的時候如果沒有找到該配置參數(shù)時設(shè)置一個默認值,相當于是一個兜底的方案。
常見的默認值
yml配置
app: string: abc isFlag: false intValue: 123 stringArray: a,b,c intArray: 1,2,3
實例代碼
package com.wideth.controller; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @Slf4j @RestController @Api(tags = "springValue") @RequestMapping("/api/spring") public class SpringValueController { ? ? //為字符串設(shè)置空值 ? ? @Value("${app.string:}") ? ? private String stringValue; ? ? //為布爾值設(shè)置默認值 ? ? @Value("${app.isFlag:true}") ? ? private boolean booleanValue; ? ? //為整數(shù)設(shè)置默認值 ? ? @Value("${app.intValue:234}") ? ? private int intValue; ? ? //為字符串數(shù)組設(shè)置默認值 ? ? @Value("${app.stringArray:aa,bb}") ? ? private String stringArrayValue; ? ? //為整數(shù)數(shù)組設(shè)置默認值 ? ? @Value("${app.intArray:11,22}") ? ? private String intArrayValue; ? ? @ApiOperation(value = "默認值--字符串") ? ? @PostMapping("/springValueString") ? ? public String springValueString() { ? ? ? ? log.info("======>>>"+stringValue); ? ? ? ? return "success"; ? ? } ? ? @ApiOperation(value = "默認值--布爾值") ? ? @PostMapping("/springValueBoolean") ? ? public String springValueBoolean() { ? ? ? ? log.info("======>>>"+booleanValue); ? ? ? ? return "success"; ? ? } ? ? @ApiOperation(value = "默認值--整數(shù)值") ? ? @PostMapping("/springValueInt") ? ? public String springValueInt() { ? ? ? ? log.info("======>>>"+intValue); ? ? ? ? return "success"; ? ? } ? ? @ApiOperation(value = "默認值--字符串數(shù)組") ? ? @PostMapping("/springValueStringArray") ? ? public String springValueStringArray() { ? ? ? ? log.info("======>>>"+stringArrayValue); ? ? ? ? return "success"; ? ? } ? ? @ApiOperation(value = "默認值--整數(shù)數(shù)組") ? ? @PostMapping("/springValueIntArray") ? ? public String springValueIntArray() { ? ? ? ? log.info("======>>>"+intArrayValue); ? ? ? ? return "success"; ? ? } }
本文小結(jié)
到此這篇關(guān)于Spring中@Value設(shè)置默認值問題解決的文章就介紹到這了,更多相關(guān)Spring @Value默認值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
若依 MyBatis改為MyBatis-Plus的實現(xiàn)步驟
本文主要介紹了若依 MyBatis改為MyBatis-Plus的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-08-08Spring與Shiro整合及加載權(quán)限表達式問題
這篇文章主要介紹了Spring與Shiro整合及加載權(quán)限表達式問題,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-12-12Spring Cloud Gateway打造可擴展的微服務(wù)網(wǎng)關(guān)
微服務(wù)網(wǎng)關(guān)是一個位于客戶端和后端微服務(wù)之間的服務(wù)器,用于處理所有與客戶端的通信,Spring Cloud Gateway都是一個值得考慮的選擇,它將幫助您更好地管理和保護您的微服務(wù),感興趣的朋友一起看看吧2023-11-11使用SpringBoot實現(xiàn)自動發(fā)送注冊驗證碼郵件功能
一直以來,我都對程序如何自動發(fā)送郵件感到好奇,想象一下,當你在某個網(wǎng)站注冊時,輸入郵箱后不久就收到一封帶有驗證碼的郵件,這種體驗既方便又高效,所以本文給大家介紹了如何用?Spring?Boot?實現(xiàn)自動發(fā)送注冊驗證碼郵件,需要的朋友可以參考下2025-04-04Java中的反射,枚舉及l(fā)ambda表達式的使用詳解
這篇文章主要為大家詳細介紹了Java的反射,枚舉及l(fā)ambda表達式,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03如何在Java中創(chuàng)建線程通信的四種方式你知道嗎
開發(fā)中不免會遇到需要所有子線程執(zhí)行完畢通知主線程處理某些邏輯的場景?;蛘呤蔷€程 A 在執(zhí)行到某個條件通知線程 B 執(zhí)行某個操作。下面我們來一起學習如何解決吧2021-09-09java實現(xiàn)百度坐標的摩卡托坐標與火星坐標轉(zhuǎn)換的示例
這篇文章主要介紹了java實現(xiàn)百度坐標的摩卡托坐標與火星坐標轉(zhuǎn)換的示例,需要的朋友可以參考下2014-03-03