SpringBoot靜態工具類注入配置文件到靜態變量

SpringBoot靜態工具類注入配置文件變量

靜態變量

修改前

private static final String baseIp = "http://192.168.0.30:8080";

修改後–動態注入

	private static String baseIp;

	//設置setter方法
	@Value("${service.ip}")
    public void setBaseIp(String baseIp) {
        OARequestUtils.baseIp = baseIp;
        //OARequestUtils 是這個類的類名
    }

靜態初始塊

修改前

static {
		System.out.println(baseIp); 
}

修改後

這樣可以起到靜態初始塊的作用

@PostConstruct
private void init(){
	System.out.println(baseIp); 
	// 輸出配置文件裏面的service.ip 的值
}

注意事項

  1. 變量不能被 final修飾
  2. setter方法不能是 靜態方法(即不能帶有 static關鍵詞)。因爲靜態變量由 IDE 生成的setter方法一般是帶有static 的,所以記得將static 關鍵詞刪除
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章