SpringBoot 使用 @Value 註解讀取配置檔案給靜態變數賦值
阿新 • • 發佈:2020-11-12
1、application.properties 配置檔案
[email protected] mail.password=xue mail.host=smtp.163.com mail.smtp.auth=true
2、給普通變數賦值,直接在變數上新增 @Value 註解
import org.springframework.beans.factory.annotation.Value; public class MailConfig { @Value("${mail.username}") private String username; @Value("${mail.password}") private String password; @Value("${mail.host}") private String host; }
3、給靜態變數賦值,直接在靜態變數上新增 @Value 註解無效
4、給靜態變數賦值
1、使用 set 方法
import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component public class MailConfig { public static String username; public static String password; public static String host; @Value("${mail.username}") public void setUsername(String username) { this.username = username; } @Value("${mail.password}") public void setPassword(String password) { this.password = password; } @Value("${mail.host}") public void setHost(String host) { this.host = host; } }
2、使用 @PostConstruct(推薦使用)
import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; @Component public class MailConfig { public static String USERNAME; public static String PASSWORD; public static String HOST; @Value("${mail.username}") private String username; @Value("${mail.password}") private String password; @Value("${mail.host}") private String host; @PostConstruct public void init() { USERNAME = username; PASSWORD = password; HOST = host; } }
到此這篇關於SpringBoot 使用 @Value 註解讀取配置檔案給靜態變數賦值的文章就介紹到這了,更多相關SpringBoot @Value 靜態變數賦值內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!