关于yml配置文件中,配置键名不能为大写

前景

在项目中需要加入自定义的表结构配置,所以想到了使用yml加载
然后写了以下yml配置代码


tableStruct:
  device:
    gaid: STRING
    system_version: STRING
    operator_name: STRING
    device_brand: STRING
    device_model: STRING
    memory_size: STRING
    space_size: STRING
    remain_memory_size: STRING
    remain_space_size: STRING
    cpu_name: STRING
    gles_version: STRING
    screen_resolution: STRING
    screen_density: STRING
    tz: INTEGER
    device_category: STRING
    device_language: STRING
    is_first_open: INTEGER
    user_first_touch_timestamp: INTEGER
    continent: STRING
    country: STRING
    app_version: STRING

本来是要配置到下面这个类的,该yml文件为Springboot的yml配置文件application.yml。按道理说,通过下面的类配置就可以成功加载了

@Component
@ConfigurationProperties(prefix = "tableStruct")
public class TableStruct {
    private Map<String, String> device;
}

但是但是!!!!!
这个时候会一直报错,其中指定字符S有问题,需要我检查yml配置文件格式。
因为我不知道这个问题,所以尝试了很多方式,最开始以为是我的配置项STRING出了问题,然后我又改成了加上单引号的'STRING'结果还是不行。

最后知道了,是配置项的键名tableStructS出了问题,这里键名不能大写,可改为table-struct的形式。
另外,我试了改成下划线也会报错table_struct
同时,修改类的注解使用的加载前缀,ok!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值