是否可以使用@Scheduled togetger和Duration字符串(例如15s和5m?)>

问题描述 投票:0回答:3

我的代码中有以下注释

@Scheduled(fixedDelayString = "${app.delay}")

在这种情况下,我必须具有这样的属性

app.delay=10000 #10 sec

属性文件看起来不可读,因为我的计算值以毫秒为单位。

有没有办法在其中传递5m或30s之类的值?

我在我的代码@Scheduled(fixedDelayString =“ $ {app.delay}”)中具有以下注释,在这种情况下,我必须具有类似app.delay = 10000#10 sec的属性,原因是属性文件看起来不可读,因为...] >

java spring spring-boot scheduled-tasks spring-scheduled
3个回答
0
投票

您可以调整注释以使用SpEL乘法。

@Scheduled(fixedDelay = "#{${app.delay} * 1000}")

0
投票

假设您使用的是Spring的最新版本,则可以使用任何可以解析为java.time.Duration的String。您的情况:


0
投票

是,在这种情况下,您可以使用cron

© www.soinside.com 2019 - 2024. All rights reserved.