springboot在靜態類中引入properties 的值


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);
}
}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM