我正在使用Spring启动来为前端构建所有后端REST API和reactJS。我的Web应用程序允许我们在UI上运行不同的任务。这基本上意味着,REST API是通过正在执行的特定任务的参数触发的。当我们通过UI执行它时,一切都很好,但如果我想为其中一些任务添加一个计划功能,那么我对如何继续它很困惑。
我在spring boot中看到了一些例子,但是它们具有对象的void返回类型的条件。而我的对象在某些情况下返回String或long。什么是安排像这些需要在不同时间为不同参数运行API的工作的最佳方法?
用例:
如何使用上述用例并使用spring boot app构建调度程序?
我见过的例子是:
package hello;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;
@SpringBootApplication
@EnableScheduling
public class Application {
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class);
}
}
/***************************************************************/
package hello;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component
public class ScheduledTasks {
private static final Logger log =
LoggerFactory.getLogger(ScheduledTasks.class);
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
@Scheduled(fixedRate = 5000)
public void reportCurrentTime() {
log.info("The time is now {}", dateFormat.format(new Date()));
}
}