使用 Spring Boot、JPA、Angular、PostgreSQL
想要在从数据库获取的特定日期和时间自动运行该流程,并相应地更新数据库中的状态
目的:我们提供15天的免费注册,假设用户在12月13日13:05注册,那么服务器应该从12月27日13:05开始停止该用户的所有进程。
如何在 12 月 27 日 13:05 自动从 Spring Boot 调用我的函数(在 PostgreSQL 数据库表中可用)
我也尝试过使用 @Scheduled 注释的调度程序,但它在给定的时间间隔后运行。
请建议或暗示实现此功能的任何方法。
最佳答案
我看到三个选项:
- 配置 Spring 调度。
- 使用轮询。
- 构建您自己的调度程序(我不会)。
配置 Spring 调度
您可以实现 SchedulingConfigurer
并相应地使用提供的 ScheduledTaskRegistrar
。
您应该能够使用 addCronTask
添加新的 cron 任务或者可能使用 setCronTask 刷新所有内容。
不过我自己还没有尝试过;-)
使用轮询
如果这不起作用,您可能会使用 select min(next_job_date) from jobs;
进行轮询,以查找下一个作业并在准备就绪时启动它。
关于java - 有什么方法可以在从 PostgreSQL 数据库表获取的给定日期时间从 Spring Boot 自动调用函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59318364/