网站seo优化徐州百度网络,云建设网站,wordpress获取文章来源,多商网在 Spring Boot 项目中#xff0c;我们经常使用 YAML 文件来配置应用程序的属性。在这篇博客中#xff0c;我将模拟如何在 Java 的 Spring Boot 项目中读取 YAML 文件中的数组、集合和 HashMap。
1. 介绍
YAML#xff08;YAML Aint Markup Language#xff09;是一种人类…在 Spring Boot 项目中我们经常使用 YAML 文件来配置应用程序的属性。在这篇博客中我将模拟如何在 Java 的 Spring Boot 项目中读取 YAML 文件中的数组、集合和 HashMap。
1. 介绍
YAMLYAML Aint Markup Language是一种人类可读的数据序列化格式通常用于配置文件。在 Spring Boot 中我们可以使用 ConfigurationProperties 注解和 application.yml 文件轻松管理应用程序的配置。
2. 准备工作
首先确保你的 Spring Boot 项目中包含以下依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId/dependency
3. 创建 YAML 文件
在 src/main/resources 目录下创建一个名为 application.yml 的文件并添加以下内容
server:port: 6666
lps:languages:- Java- Python- C- C- C#colors:- red- green- bluefruits:- name : appleprice : 3.88- name : bananaprice : 2.88- name : orangeprice : 5.28ages:john: 30alice: 25bob: 35这个文件包含了两个数组、一个水果列表和一个年龄的 HashMap。
4. 创建配置类
创建一个 Java 配置类用于将 YAML 文件中的属性映射到对象。创建一个名为 AppProperties.java 的文件
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;/*** author 阿水* ClassName LpsProperties * description: TODO* date 2023年11月26日* version: 1.0*/
Component
ConfigurationProperties(prefix lps)
Data
public class LpsProperties {private String[] languages;private ListString colors;private ListFruits fruits;private MapString, Integer ages;Datapublic static class Fruits {private String name;private Double price;}
}5. 注入配置类
在你的服务或组件中通过 Autowired 注解将 AppProperties 配置类注入然后访问其中的属性 AutowiredLpsProperties lpsProperties;
6. 运行项目
在你的应用程序中使用 LpsProperties类并调用方法你将能够从 YAML 文件中读取数组、集合和 HashMap并在控制台上输出它们。
SpringBootTest
class CountDemoApplicationTests {AutowiredLpsProperties lpsProperties;Testvoid contextLoads() {String[] languages lpsProperties.getLanguages();System.out.print(常见编程语言);for (String language : languages) {System.out.print(language );}System.out.println(等等);System.out.println(----------------------);MapString, Integer ages lpsProperties.getAges();ages.forEach((key, value) - System.out.println(key 今年 value 岁));System.out.println(----------------------);ListString colors lpsProperties.getColors();for (String color : colors) {System.out.println(收到的颜色为: color);}System.out.println(----------------------);ListLpsProperties.Fruits fruits lpsProperties.getFruits();fruits.forEach(fruit - System.out.println(fruit));}}7. 结论
通过使用 ConfigurationProperties 注解和 YAML 文件我们可以轻松地将配置属性映射到 Java 对象中。这使得在 Spring Boot 项目中管理数组、集合和 HashMap 的配置变得简单而直观。 希望这篇博客对你在 Spring Boot 项目中读取 YAML 文件中的数组、集合和 HashMap 有所帮助。如有疑问或建议请随时提出。