SpringBoot獲取不到application.properties的值
阿新 • • 發佈:2020-12-02
導讀
最近在搭建訊息閘道器服務,因為裡面用到了設計模式,啟動的時候,沒有被Spring管理到,使用@Value(${})遲遲獲取不到application.properties裡的值,然後手寫一個工具類,其他地方呼叫的時候,只需要從工具類中獲取key即可。
工具類
package com.ybchen.smsgateway.config; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource; import org.springframework.core.io.support.PropertiesLoaderUtils;import org.springframework.stereotype.Component; import java.io.IOException; import java.util.Properties; /** * @ClassName:SystemConfig * @Description:系統配置類 * @Author:chenyb * @Date:2020/12/2 4:11 下午 * @Versiion:1.0 */ @Component public class SystemConfig { private static Properties props ;public SystemConfig(){ try { Resource resource = new ClassPathResource("/application.properties"); //讀取那個配置檔案 props = PropertiesLoaderUtils.loadProperties(resource); } catch (IOException e) { e.printStackTrace(); } } public static String getProperty(String key){return props == null ? null : props.getProperty(key); } public static String getProperty(String key,String defaultValue){ return props == null ? null : props.getProperty(key, defaultValue); } public static Properties getProperties(){ return props; } }
呼叫
SystemConfig.getProperty("wx.appID")