java中的接口是类吗
737
2022-11-13
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小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~