关于springboot加载yml配置文件的no字段自动转义问题

 更新时间:2022年02月16日 10:09:26   作者:great978  
这篇文章主要介绍了关于springboot加载yml配置文件的no字段自动转义问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

加载yml配置文件的no字段自动转义

项目上线了才发现一个字段被转义了,如下图:

本来应该会拿到no字段和数据进行比对的,结果发现比对完的数据这个字段全是null,debug才发现这个字段这么写在加载yml文件之后自动变成了"false",第一次发现这个问题,修改很方便,把yml文件里面这个no,换成'no'就可以不被转义成"false"了,谨以此提醒,小错误导致临时调整一次上线。。。。

springboot配置文件自动转译的坑

在使用SpringBoot配置文件时遇到的问题,当使用yaml作为配置文件时将batchEmail.task.switch 设置为 ON

#批量定时发送邮件配置
  batchEmail:
    task:
      size: 1000
      switch: ON

则在JAVA代码中通过 @Value取值

  @Value("${batchEmail.task.switch}")
  private String batchEmailTaskSwitch;

会得到自动转译的Boolean值

经过测试,若想取得字符串"ON" 须将配置文件做如如下修改

#批量定时发送邮件配置
  batchEmail:
    task:
      size: 1000
      switch: "ON"

ON加了双引号后,取值正常

小结一下

约定大于配置,这是springboot最大的特点,所以在使用配置文件定义属性时,应该严格遵循配置文件的格式要求,定义的字符串必须加双引号,否则想yes、no、off、on之类的字符会被转译为Boolean串。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 浅谈java继承中是否创建父类对象

    浅谈java继承中是否创建父类对象

    下面小编就为大家带来一篇浅谈java继承中是否创建父类对象。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Java值传递和引用传递详解

    Java值传递和引用传递详解

    这篇文章主要为大家详细介绍了Java值传递和引用传递,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • Java连接MySQL数据库命令行程序过程

    Java连接MySQL数据库命令行程序过程

    SQL编程包括两种形式,一种是过程化编程,主要通过数据库交互式工具,通过存储过程、触发器、函数等形式的编程;另一种是嵌入式SQL编程,将SQL语句嵌入到高级开发语言,完成数据的各种操作
    2021-10-10
  • Java预览PDF时的文件名称问题及解决

    Java预览PDF时的文件名称问题及解决

    这篇文章主要介绍了Java预览PDF时的文件名称问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • springcloud 服务降级的实现方法

    springcloud 服务降级的实现方法

    这篇文章主要介绍了springcloud 服务降级的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • 解决window.location.href之后session丢失的问题

    解决window.location.href之后session丢失的问题

    今天小编就为大家分享一篇关于解决window.location.href之后session丢失的问题,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • Java内存划分:运行时数据区域

    Java内存划分:运行时数据区域

    听说Java运行时环境的内存划分是挺进BAT的必经之路,这篇文章主要给大家介绍了关于Java运行时数据区域(内存划分)的相关资料,需要的朋友可以参考下
    2021-07-07
  • Java垃圾回收jconsole分析

    Java垃圾回收jconsole分析

    这篇文章主要为大家介绍了Java垃圾回收jconsole分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • SpringBoot返回Json对象报错(返回对象为空{})

    SpringBoot返回Json对象报错(返回对象为空{})

    本文主要介绍介绍了SpringBoot返回Json对象报错(返回对象为空{}),文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Springboot mybatis plus druid多数据源解决方案 dynamic-datasource的使用详解

    Springboot mybatis plus druid多数据源解决方案 dynamic-datasource的使用详

    这篇文章主要介绍了Springboot mybatis plus druid多数据源解决方案 dynamic-datasource的使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11

最新评论