如何在application.properties中配置@Scheduled的cron值

Joh*_*ohn 5 cron spring schedule

我正在像这样使用弹簧计划。

@Component
@EnableScheduling
public class ScheduledTasks {

    @Autowired
    private ISomeJob someJob;

    /**
     * do a Job every 5 minutes.
     */
    @Scheduled(cron = "0 0/5 * * * ?")
    public void foo(){
        someJob.doSomething();
    }
}
Run Code Online (Sandbox Code Playgroud)

有效。但有一个问题。
我有两个名为debug和的配置文件release
我想每5分钟执行一次这项工作,debug但每小时要执行一次release
因此,有什么方法可以配置cronapplication.properties中的值。

Sta*_*avL 9

只需添加一个表达式@Scheduled(cron = "${some.profile.cron}")即可交换cron依赖于所选配置文件的内容。