您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何通过环境变量设置名称中带有下划线的Spring Boot属性?

如何通过环境变量设置名称中带有下划线的Spring Boot属性?

这是一个古老的问题,但是如果其他人(例如我)最终在这里寻找此信息,我会回答。

HIBERNATE_FORMAT_sql应该可以解决问题

实际上,不是“翻译” OS环境变量,而是“ Spring”属性名称

名称以几种方式转换,并根据可用的环境变量进行查找。例如,“ hibernate.format.sql”查找为:

然后与大写相同:

尽管不能使用set或export命令在名称中设置带点的环境变量,但是可以使用env命令。我推迟判断这是否是一个好主意:

env "my.dotted.name=\"a value\"" the-command-you-want-to-run

有关详细信息,请查看SystemEnvironmentPropertySource.java。我链接到特定版本,但您应确保查看所使用的版本。

解决生产环境中的这类问题,您可以尝试为属性解析代码打开调试日志记录:

logging:
  level:
    org.springframework.core.env: DEBUG

…或通过设置适当的环境变量:)

Java 2022/1/1 18:23:26 有367人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶