SpringBoot 使用 @Value 注解读取配置文件给静态变量赋值

网友投稿 578 2023-03-14

SpringBoot 使用 @Value 注解读取配置文件给静态变量赋值

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;

http://}

}

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;

}

}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:uni小程序(uni小程序事件穿透)
下一篇:平板电脑如何打开小程序(平板怎么用微信小程序)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~