javascript
SpringBoot中通过ConfigurationProperties注解的方式读取application.yml中配置的属性值
場景
在SpringBoot后臺項目中,某些固定的屬性需要配置在配置文件application.yml中。
比如上傳到服務(wù)器的文件路徑。
然后在其他業(yè)務(wù)代碼中比如上傳文件接口中需要或者到配置的這個屬性值。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
關(guān)注公眾號
霸道的程序猿
獲取編程相關(guān)電子書、教程推送與免費(fèi)下載。
實現(xiàn)
首先在application.yml中添加配置
ruoyi:# 名稱name: RuoYi# 版本version: 2.3.0# 版權(quán)年份copyrightYear: 2019# 實例演示開關(guān)demoEnabled: true# 文件路徑 示例( Windows配置D:/ruoyi/uploadPath,Linux配置 /home/ruoyi/uploadPath)profile: D:/ruoyi/uploadPath?
比如這里的ruoyi下的profile的屬性值
D:/ruoyi/uploadPath
怎樣在代碼中獲取。
首先在SpringBoot項目目錄下新建config目錄,然后新建配置類RuoYiConfig,名字隨意
然后在配置類上添加注解
@Component @ConfigurationProperties(prefix = "ruoyi") public class RuoYiConfig注意這里的prefix屬性值與上面配置文件的根元素一致
然后配置類中的屬性與配置文件根節(jié)點(diǎn)下的名稱一致 ,配置類完整代碼
import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component;/*** 讀取項目相關(guān)配置**/ @Component @ConfigurationProperties(prefix = "ruoyi") public class RuoYiConfig {/** 項目名稱 */private String name;/** 版本 */private String version;/** 版權(quán)年份 */private String copyrightYear;/** 實例演示開關(guān) */private boolean demoEnabled;/** 上傳路徑 */private static String profile;public String getName(){return name;}public void setName(String name){this.name = name;}public String getVersion(){return version;}public void setVersion(String version){this.version = version;}public String getCopyrightYear(){return copyrightYear;}public void setCopyrightYear(String copyrightYear){this.copyrightYear = copyrightYear;}public boolean isDemoEnabled(){return demoEnabled;}public void setDemoEnabled(boolean demoEnabled){this.demoEnabled = demoEnabled;}public static String getProfile(){return profile;}public void setProfile(String profile){RuoYiConfig.profile = profile;}/*** 獲取上傳路徑*/public static String getUploadPath(){return getProfile();} }這里的配置類的
private static String profile;就能獲取到application.yml中配置的profile的屬性值了。
為了或此屬性值更加便捷,又新增了一個靜態(tài)方法
??? public static String getUploadPath(){return getProfile();}這樣就能通過類直接調(diào)用方法。
然后還拼接了一層目錄。這樣通過
RuoYiConfig.getUploadPath();獲取的路徑就是
D:/ruoyi/uploadPath
除了額外封裝一層靜態(tài)類的方式。也可以在需要引用的地方使用注解自動引用配置類
??? @Autowiredprivate RuoYiConfig ruoYiConfig然后獲取其屬性
ruoYiConfig.getProfile();?
總結(jié)
以上是生活随笔為你收集整理的SpringBoot中通过ConfigurationProperties注解的方式读取application.yml中配置的属性值的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SpringBoot+El-upload
- 下一篇: Vue中使用vue-croper插件实现