【问题标题】:How to update a field using a refresh timeout using JPA or SQL?如何使用 JPA 或 SQL 使用刷新超时更新字段?
【发布时间】:2018-04-01 17:06:13
【问题描述】:

出于特定需求,我想使用超时将表字段设置为 1 后自动更新为值 0,如果我进行另一次更新,该超时将被重置。

在我的后端 SpringBoot Rest API 中,JPA 和 JDBC 都已启用且可用。

我的 DBMS 是 MariaDB。

谢谢

【问题讨论】:

    标签: java sql spring-boot jpa mariadb


    【解决方案1】:
    @Scheduled(fixedDelay = 1000)
    public void scheduleFixedDelayTask() {
        System.out.println(
          "Fixed delay task - " + System.currentTimeMillis() / 1000);
    }
    

    Spring 现在有built-in scheduler。以前人们出于这种目的使用 Quartz 库。

    【讨论】:

    • 这是一件好事,但我的问题是超时,在这种情况下,我需要它在 1000 之后刷新,即使在时间 999 更新值 1,我的字段也将为 0
    • 但最后这不是一个坏主意,我会让我的 schudle 将特定比率的值减去 5,或者如果等于零,则让它为零,然后每次更新我都会更新我的字段到 5*超时
    猜你喜欢
    • 1970-01-01
    • 2015-04-06
    • 1970-01-01
    • 1970-01-01
    • 2015-03-03
    • 2015-05-25
    • 1970-01-01
    • 2018-04-24
    • 2021-12-10
    相关资源
    最近更新 更多