java读取解析application.yml
不用依赖spring容器,可单独使用。
bug已修改...
第一步、首先要2个jar
com.fasterxml.jackson.dataformat
jackson-dataformat-yaml
2.9.8
com.fasterxml.jackson.dataformat
jackson-dataformat-properties
2.9.8
第二步、新建一个BootYaml.java
import cn.hutool.core.convert.Convert;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.resource.ClassPathResource;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.text.StrSpliter;
import cn.hutool.core.util.StrUtil;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.core.JsonToken;
import com.fasterxml.jackson.dataformat.javaprop.JavaPropsFactory;
import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
import com.fasterxml.jackson.dataformat.yaml.YAMLGenerator;
import com.fasterxml.jackson.dataformat.yaml.YAMLParser;
import com.ynzhongxi.pay.utils.Tools;
import org.yaml.snakeyaml.Yaml;
import java.io.BufferedReader;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.LinkedHashMap;
import java.util.List;
/**
* 写一个SpringBoot读取Yaml配置文件的类
*
* @author lixingwu
*/
public class BootYaml extends Yaml {
/**
* 环境配置路径的键值
*/
private String active;
/**
* 引入yml的键值
*/
private String include;
/**
* 配置文件的前缀
*/
private String prefix;
/**
*
方法名称:根据application.yml转化为LinkedHashMap.
*
详细描述:会解析spring.profiles.active启用的配置和spring.profiles.include引入的文件.
*
创建时间:2019-07-10 17:39:38
*
创建作者:李兴武
*
修改记录:
*
* @param path application.yml