java如何在属性中配置注释计划程序fixedDelay

时间:2018-12-27 03:50:57

标签: java spring annotations config

@Scheduled(cron = "0 10 0 5 * ?")   
//@Scheduled(fixedDelay = 10000)
public void task() {
}

有没有一种配置方法:

在测试环境中:按计划选择fixedDelay = 10000;

在产品环境中:按计划选择cron = "0 10 0 5 * ?"

这个注释语法糖filed=value在Java中叫什么?

1 个答案:

答案 0 :(得分:3)

从Spring 3.2.2起,您可以将其添加到配置文件中,并通过Spring表达式语言(application.properties or application.yml)读取它

application.yml

 scheduler: 
    fixedDelay: 1000

在Java类中

  @Scheduled(fixedDelayString = "${scheduler.fixedDelay}")
  public void task() {
  }

注意::在3.2.2之前,它将只接受长值,但是从3.2.2开始,它将也接受字符串