1.自定义类实现EnvironmentPostProcessor接口
类中的代码为:
public class MyEnvironmentPostProcessor implements EnvironmentPostProcessor {
@Override
public void postProcessEnvironment(ConfigurableEnvironment environment, SpringApplication application) {
//tomcat路径
String property = System.getProperty("catalina.home");
String path = "E:\\application-devs.yml";
//Springboot读取yml配置
YamlPropertiesFactoryBean yaml = new YamlPropertiesFactoryBean();
yaml.setResources(new FileSystemResource(path));
MutablePropertySources propertySources = environment.getPropertySources();
propertySources.addFirst(new PropertiesPropertySource("Config", yaml.getObject()));
}
}
其中path是指存放的配置文件的路径。可以根据自己的需求进行改变。
2.在resouces目录下建一个META-INF文件目录,在目录中建一个spring.factories文件,在文件中配置自己实现的动态读取文件类
代码为:
org.springframework.boot.env.EnvironmentPostProcessor=com.sqltest.dao.MyEnvironmentPostProcessor
等号后面的部分是指上面自定义的类的位置。
3.测试效果:
正常启动,成功加载到了.yml配置文件。
版权声明:本文为moderate_people原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。