spring中将yaml文件转换为Properties
文章目录
- 一 、简要概述
- 二、主要用途
- 三、源码放送
一 、简要概述
借助于spring框架,将yaml文件转换为Properties。
YamlPropertiesFactoryBean 是 Spring 框架中的一个类,用于将 YAML 格式的配置文件转换为 Properties 对象。这个类通常用于在 Spring 应用程序中加载 YAML 格式的配置文件,并将其转换为可以被 Spring 环境和配置系统使用的 Properties 对象。
二、主要用途
加载 YAML 配置文件:YamlPropertiesFactoryBean 可以读取 YAML 格式的配置文件,并将其转换为 Properties 对象,这样 Spring 就可以使用这些配置信息。
集成到 Spring 配置系统:通过将 YamlPropertiesFactoryBean 生成的 Properties 对象注入到 Spring 的 PropertySourcesPlaceholderConfigurer 或其他配置类中,可以方便地在 Spring 应用程序中使用 YAML 配置。
三、源码放送
以下是一个简单的示例,展示如何使用 YamlPropertiesFactoryBean 加载 YAML 配置文件
import java.util.Properties;
import org.junit.Test;
import org.springframework.beans.factory.config.YamlPropertiesFactoryBean;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class YamlProcessBySpringTest
{
Resource resource = new ClassPathResource("application.yml");
@Test
public void testToProps()
{
YamlPropertiesFactoryBean factoryBean = new YamlPropertiesFactoryBean();
factoryBean.setResources(resource);
Properties props = factoryBean.getObject();
props.keySet().stream().forEach(k -> log.info("{} ===> {}", k, props.get(k)));
}
}
详细说明:
YamlPropertiesFactoryBean:这个类负责读取 YAML 文件并将其转换为 Properties 对象。
ClassPathResource:用于指定 YAML 文件的位置,这里假设 YAML 文件位于类路径下。
此实现,依赖较单一,仅依赖于spring-beans、snakeyaml,建议使用!
有任何问题和建议,都可以向我提问讨论,大家一起进步,谢谢!
-over-