我使用Spring Boot构建了简单的Web应用程序,但是我需要在创建Cron作业但无法正常工作的Application中创建Sheduled任务。那是我执行任务的代码:
@Component
public class CronService {
@Autowired
private XmlDeserializer xmlDeserializer;
@Autowired
private CurrencyRepository currencyRepository;
@Scheduled(cron = "0 12 0 * * *", zone = "Europe/Sofia")
public void saveData() throws IOException, SAXException, ParserConfigurationException {
...
}
这是我的Spring启动的Аpplication.java代码:
@SpringBootApplication
@EnableScheduling
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
答案 0 :(得分:1)
我假设您需要CRON每小时分别运行 xx:00,xx:12,xx:24,xx:36,xx:48 5次。正确的语法为:0 0/12 * * * ?
。另一个假设是每小时精确地在 xx:12 上运行一次cron,那么您应该使用:0 12 * * * ?
。
我建议您使用外部工具,该工具可以帮助您创建诸如cronmaker之类的cron表达式。