gpt4 book ai didi

java - Spring @Scheduled 注解

转载 作者:搜寻专家 更新时间:2023-11-01 02:23:41 30 4
gpt4 key购买 nike

如何动态使用spring的@Scheduled注解?

CronTrigger(String expression, TimeZone timeZone)

http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/scheduling/support/CronTrigger.html#CronTrigger-java.lang.String-java.util.TimeZone-

由于我在数据库中有多个时区,我该如何动态传递它们?

我在我的代码中试过这个:

TimeZone timezone = null;
String timezone1 = null;
public SchedulerBean(String timezone2)
{
this.timezone1 = timezone2;
//constructor
}

@Scheduled(cron="0 0 8 * * ?", zone =timezone.getTimeZone(timezone1) ) //Error at this line
public void sendQuestionNotif()
{
//......code
}

这是我遇到的错误

*Type mismatch: cannot convert from TimeZone to String*

请帮帮我。因为我想根据时区 触发cron。 TIA。

最佳答案

注解参数不能动态设置。您可以像这样以编程方式执行此操作

class Scheduler implements Runnable {
public Scheduler(TaskScheduler scheduler, String timezone, String cron) {
scheduler.schedule(this, new CronTrigger(cron, TimeZone.getTimeZone(timezone)));
}

@Override
public void run() {
//
}
}

关于java - Spring @Scheduled 注解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31651196/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com