Jhipster JPA-过期后删除实体

问题描述 投票:0回答:1

我有一个带有ZonedDateTime字段的JPA实体表(使用Jhipster JDL studio生成)。

@Entity
@Table(name = "randomTable")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class RandomTable implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sequenceGenerator")
    @SequenceGenerator(name = "sequenceGenerator")
    private Long id;

    @NotNull
    @Column(name = "data", nullable = false)
    private ZonedDateTime data;

}

我想这样做,以便当当前日期/时间超过我的ZonedDateTime字段中描述的日期时,我数据库中的实体将被删除。我该如何实现?

java spring jpa jhipster
1个回答
1
投票

进行此操作的最佳方法是创建一个每隔几分钟运行一次的任务Bean,并检查所有实体以查看它们是否过期,然后删除过期的实体。查看@Scheduled批注。

https://www.baeldung.com/spring-scheduled-tasks

https://spring.io/guides/gs/scheduling-tasks/

© www.soinside.com 2019 - 2024. All rights reserved.