【发布时间】:2020-02-19 23:03:24
【问题描述】:
private static final String CONSTANT = (p.getProperty("MILLISECONDS_OF_12_HOURS"));
@Scheduled(fixedRateString = CONSTANT)
public void clearCache() throws IOException {
if(!rrcodeService.cachedAccessGroups.isEmpty()) {
for (Entry<String, CachedAccessGroups> entry : rrcodeService.cachedAccessGroups.entrySet()) {
String key = entry.getKey();
CachedAccessGroups accessGroups = rrcodeService.cachedAccessGroups.get(key);
if(now.getTime() - accessGroups.getCachedDate().getTime()> Integer.parseInt(p.getProperty("EVICT_CACHE"))) {
rrcodeService.cachedAccessGroups.remove(key);
}
}
}
}
在外部属性文件中设置 MILLISECONDS_OF_12_HOURS 的值。我正在尝试将该值设置为 FixedRateString。但它的抛出错误说“注释属性 Scheduled.fixedRateString 的值必须是一个常量表达式” 任何帮助将不胜感激。谢谢!
【问题讨论】:
标签: java scheduled-tasks