开发者社区 > 云原生 > 正文

springboot 中nacos 同一个文件中 占位符 ${} 不替换,该如何解决?

springboot 中nacos 同一个文件中 占位符 ${} 不替换,该如何解决?

展开
收起
2401。 2023-10-05 17:40:12 387 0
1 条回答
写回答
取消 提交回答
  • 如果在SpringBoot中,使用Nacos作为配置中心,同一个文件中有多个占位符${}不替换,可能是因为Nacos配置中心的缓存机制导致的。可以尝试以下解决方法:

    1. 清空Nacos配置中心的缓存。在控制台中点击"服务列表" -> "配置管理" -> "刷新配置",清空缓存后重新加载配置文件。

    2. 修改配置文件的格式。将占位符${}替换为其他符号,例如#{}或%7B%7D等,再重新加载配置文件。

    3. 在代码中使用@Value注解获取配置值时,指定配置文件的路径和名称。例如:

    @Value("${my.property:#{environment.getProperty('my.property')}}")
    private String myProperty;
    

    其中${my.property:#{environment.getProperty('my.property')}}表示如果my.property在Nacos配置中心存在,则直接获取;否则从环境变量中获取。

    2023-10-11 14:05:49
    赞同 展开评论 打赏

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载

相关实验场景

更多