是否可以在正在执行的方法中获取fixedDelay
的值?
是否存在这样的事情:
@Scheduled(fixedDelay = 86400000) //one day
public void sendEmails() {
System.out.println(TaskExecutor.getCurrentFixedDelay()); // (would print 86400000)
}
答案 0 :(得分:0)
public class AnnotationParameter {
@Scheduled(fixedDelay = 86400000) //one day
public void sendEmails() throws NoSuchMethodException
{
Method method = AnnotationParameter.class.getDeclaredMethod
("sendEmails");
Scheduled annotation = method.getAnnotation(Scheduled.class);
long fixedDelay = annotation.fixedDelay();
System.out.println(fixedDelay); // (would print 86400000)
}
public static void main(String[] args) throws NoSuchMethodException
{
new AnnotationParameter().sendEmails();
}
}