1、dev.properties 的font.config.path值傳入靜態 類中
server.port=9001 debug=false logging.level.root=warn logging.level.tk.mybatis.spring.mapper=trace #logging.path=${user.dir}/logs/ #todo logger 的info信息沒有寫入文件 ,文件大小沒有設置 logging.file=test.log # 多文件上傳最大大小 spring.servlet.multipart.max-request-size=200MB # 單文件上傳最大大小 spring.servlet.multipart.max-file-size=50MB #file.dest.path=D:/dev/TSC/test_data/ file.dest.path=${user.dir}//DataFile// #file.dest.path=${basedir} #用戶權限時長配置文件 user.config.path=${user.dir}//tsc-common//src//main//resources//userConfig.txt # 字體包路徑 font.cofig.path=${user.dir}//tsc-common//src//main//resources//font// #user.config.path=${user.dir}\\tsc-common\\src\\main\\resources\\userConfig.txt
2、注入bean 管理 GlobalConfig.java類:使用@Component 注解,將值set給另外一個靜態 成員,(注,使用靜態測試方法,還是提示null,但啟動 MainApplication 項目,會成功 >>> 錯誤:由於加了@Component注解,交由spring管理了,所以靜態類中的測試方法是不能取到值的(null))
//package com.swjtu.tsc.service.controllers; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; import org.springframework.stereotype.Component; @Configuration @PropertySource("classpath:application-dev.properties") @ConfigurationProperties(prefix = "font") @Component public class GlobalConfig { public static String FONT_CONFIG_PATH; @Value("${font.cofig.path}") public void setUsernam(String sERVER_IP) { FONT_CONFIG_PATH = sERVER_IP; }
public static void main(String[] rag){
String s = FONT_CONFIG_PATH; // 這樣測試還是為null
System.out.println(s);
}
}
3、test.java類靜態方法getFontPath: 在啟動項目后能獲取到 dev-properties 的font.cofig.path值
public class test(){ public static void getFontPath(){ String fontpath= GlobalConfig.FONT_CONFIG_PATH; System.out.println("字體路徑= "+fontpath); } }