首先需要配置pom.xml文件,添加Spring Boot和YAML的依赖。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>1.25</version>
</dependency>
接下来,在Spring Boot的启动类中添加注解和主方法。
@SpringBootApplication
public class MainApplication implements CommandLineRunner {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class, args);
}
@Override
public void run(String... args) throws Exception {
// 配置文件路径
String path = "classpath:application.yml";
// 加载配置文件
Yaml yaml = new Yaml(new Constructor(Properties.class));
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(path);
Properties properties = yaml.load(inputStream);
System.out.println(properties.toString());
}
}
在这段代码中,我们首先定义了配置文件的路径,使用YAML类加载配置文件,将其转换成Properties对象,最后打印出来。
假设配置文件内容如下:
server:
port: 8080
database:
url: jdbc:mysql://localhost:3306/test
username: root
password: 123456
这时候运行程序,将会看到以下输出:
{server.port=8080, database.password=123456, database.username=root, database.url=jdbc:mysql://localhost:3306/test}
我们也可以获取单独的配置项:
String port = properties.getProperty("server.port");
String url = properties.getProperty("database.url");
这时候输出的结果为:
8080
jdbc:mysql://localhost:3306/test
至此,我们成功在XML中读取了YAML格式的配置文件。
本文链接:http://task.lmcjl.com/news/15136.html