springboot中yml配置文件属性读取

springboot中yml配置文件属性读取

方式一 : 通过Environment获取

yml文件:

goto:
  server:
    url: http://10.204.4.186:9010

Environment两种使用方式

  1. Autowired注入
@Autowired
private Environment env;
// ......
String prefix = env.getProperty("goto.server.url");
  1. 使用@Configuration注解,并实现EnvironmentAware接口
package com.metarnet.kpi.utils;

import org.springframework.context.EnvironmentAware;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.env.Environment;

/**
 * @ClassName YmlUtil
 * @Description 获取yml中的属性值
 * @Author wangyj
 * @Date 19/11/18
 */
@Configuration
public class YmlUtil implements EnvironmentAware {

    private static Environment env;

    @Override
    public void setEnvironment(Environment environment) {
        env = environment;
    }

    public static String getProperty(String name) {
        return env.getProperty(name);
    }
}

方式二 : @ConfigurationProperties(prefix = “toss”)

yml文件:

toss:
  # 文件上传路径P
  profile: D:/eclipse_workspace/kpi/profile/system/

java代码:

package com.metarnet.kpi.$config;

import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * @ClassName TossConfig
 * @Description
 * @Author wangyj
 * @Date 19/10/24 10:05
 */
@Component
@ConfigurationProperties(prefix = "toss")
public class TossConfig {

    /**文件上传路径*/
    private static String profile;

    public static String getProfile() {
        return profile;
    }

    public void setProfile(String profile) {
        TossConfig.profile = profile;
    }

    public static String getDownloadPath(){
        return profile + "download/";
    }
}

方式三 : @Value

暂时没有使用到这种方式

springboot多配置文件(多个yml)

如下图 , 是用了多个自定义配置文件
需要 注意 ,自定义yml文件名称需要遵循 application-*.yml
多个配置文件
然后需要在application.yml文件中添加:

spring.profiles.include:goto,excel

spring:
  profiles:
#    active: development
    active: production
    include: goto,excel
注意 , 以上内容目前我也处在一个知其然不知其所以然的状态 , 其中或有谬误或不足之处 , 各位看官如有发现请不吝指点
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值