_带头大哥 2022-07-26 16:33 采纳率: 0%
浏览 65

读取配置文件中的值,并且作用于注解

问题遇到的现象和发生背景

怎样动态读取配置文件中设置的超时时间,作用于Dubbo注解?(读取Nacos配置中心的文件配置的超时时间,实现在dubbo在进行远程调用的时候,控制接口的调用超时时间?)

问题相关代码,请勿粘贴截图
@Value("${SayService.serviceTimeOut}")
 final Integer serviceTimeout=0;
@Value("${SayService.retryTimes}")
 final Integer retryTime=0;
@Reference(timeout =serviceTimeout, retries = retryTime)
private SayService sayService;

yaml文件:

SayService:
  serviceTimeOut: 3000
  retryTimes: 3

img

因为是常量,所以第一次赋值为0以后,就不会对内容进行更改,所以读到的配置为0.那么怎样才能做到这种读取配置文件,并且能动态刷新呢?

  • 写回答

2条回答 默认 最新

  • 叫兽-郭老师 新星创作者: Java技术领域 2022-07-26 16:39
    关注

    既然你想要动态的,那也就是变量值会平凡改动,你直接把final去掉不就可以了
    timeout="#{${SayService.serviceTimeOut}}" 这个试试

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 7月26日