原 spring 读取yml中的配置
版权声明:本文为博主原创文章,请尊重他人的劳动成果,转载请附上原文出处链接和本声明。
本文链接:https://www.91mszl.com/zhangwuji/article/details/1056
spring boot 读取yml配置文件分为两种:第一种是访问你指定方法的时候去获取配置文件里面的值;第二种是在项目加载的时候去读取配置文件。
第一种情况的读取方式:
1 yml配置如下
sms:
url: http://127.0.0.1:8083/v1/sendMessage
sendsms: false # true 为开启短信功能; false为关闭短信功能
2 控制层获取方式如下。
@Value("${sms.url}")
private String smsurl;
这样就可以获取到值了。
备注:测试的时候不要用main方式去测试,这样的方式进行测试获取到的值是空的,直接请求你的方法进行测试。
第二种情况的读取方式:
1 yml配置如下
sftp:
ip: 127.0.0.1
port: 2000
account: abc
password: 123
directory: /opt/abc
2 新建一个javabean
package com.mszl.vo;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
// sftp
@Component
public class SftpVO {
public static String ip;
public static int port;
public static String account;
public static String password;
public static String directory;
public String getIp() {
return ip;
}
@Value("${sftp.ip}")
public void setIp(String ip) {
SftpVO.ip = ip;
}
public int getPort() {
return port;
}
@Value("${sftp.port}")
public void setPort(int port) {
SftpVO.port = port;
}
public String getAccount() {
return account;
}
@Value("${sftp.account}")
public void setAccount(String account) {
SftpVO.account = account;
}
public String getPassword() {
return password;
}
@Value("${sftp.password}")
public void setPassword(String password) {
SftpVO.password = password;
}
public String getDirectory() {
return directory;
}
@Value("${sftp.directory}")
public void setDirectory(String directory) {
this.directory = directory;
}
}
注意:不要忘记@Component 和@Value 注解
3 直接从vo中取值。
2019-08-23 15:16:07 阅读(1959)
名师出品,必属精品 https://www.91mszl.com
博主信息