怎样动态读取配置文件中设置的超时时间,作用于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
因为是常量,所以第一次赋值为0以后,就不会对内容进行更改,所以读到的配置为0.那么怎样才能做到这种读取配置文件,并且能动态刷新呢?
既然你想要动态的,那也就是变量值会平凡改动,你直接把final去掉不就可以了
timeout="#{${SayService.serviceTimeOut}}" 这个试试
1.常量应该是初始化之后就不会再改变的,既然你的变量是从配置文件里赋值的,那就不应该定义成常量
2.你可以写个属性方法,让变量只允许赋值一次,再次赋值抛个错误