JAVA 读取 YAML 文件

 yaml  文件实例

  config:
    list:
      - {https: https://192.168.177.100/,username: wang}

      - {https: https://192.168.177.101/, age: 19}

注意key: 这地方必须要有一个空格 

 

需要定义一个类 来声明  存放 定义

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;

import org.springframework.stereotype.Component;

@Data
@Component
@NoArgsConstructor
@AllArgsConstructor
// 配置文件的声明
public class conf {
/**
* Yaml 字段声明
*/
private String https;
private String username;
private String age;

}

然后 把这些声明 添加进列表
@Data
@Component
@NoArgsConstructor
@AllArgsConstructor
@ConfigurationProperties(prefix = "config")

public class ConfigList {
/**
* Yaml 文件配置
*/
private List<conf> list;
}
最后才是拿来使用
// 入口
@ResponseBody
@RestController
public class{
// yaml list配置
@Autowired
private ConfigList config_list;
}


循环调用 多个列表
for (conf  conf_field: config_list.getList()){
System.out.println(conf_field);
}

-------------------------------------------------------------------------------
YAML 内部引用

通过变量引用设置 配置量的【值(value)】
在YAML文件中,一个配置量的值可以通过引用另一个变量来设置

Publicpath: /home/deployer/stress/conf/

logging:
config: ${Publicpath}logback-spring.xml
直接在后面 写上 想要拼接的内容



要想替换键,则需要用到锚点。锚点用符号“&”定义,并用符号“*”进行引用。
锚点有两种使用方式,一是通过“<<:”将键值对一起引入

default-db: &default-db-config
host: 127.0.0.1
port: 3306

user-db:
<<: *default-db-config

结果为:

default-db:
host: 127.0.0.1
port: 3306
user-db:
host: 127.0.0.1
port: 3306


posted @   .未央  阅读(1937)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
点击右上角即可分享
微信分享提示