91名师指路-头部
91名师指路

spring 读取yml中的配置

由于某些原因,现在不支持支付宝支付,如需要购买源码请加博主微信进行购买,微信号:13248254750

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     阅读(1815)

名师出品,必属精品    https://www.91mszl.com

联系博主    
用户登录遮罩层
x

账号登录

91名师指路-底部