关键词

springboot 在xml里读取yml的配置信息的示例代码

首先需要配置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

展开阅读全文