SpringBoot 使用 @Value 注解读取配置文件给静态变量赋值
作者:Xue8Tzxs
这篇文章主要介绍了SpringBoot 使用 @Value 注解读取配置文件给静态变量赋值,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
1、application.properties 配置文件
mail.username=xue@163.com 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 静态变量赋值内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!