1

我有一个 Spring 控制器,用于向父项添加不同类型的元素,当我更新或添加新项时,我需要更新其父项的最后修改日期。我的问题是我们多次调用此更新最后修改日期服务,我想避免这种情况。有没有更好或更优雅的方法来解决这个问题,然后是 timers(Timer, TimerTask) 或 ScheduledFuture, ScheduledThreadPoolExecutor?

Timer updateLastModifiedDateTimer = timers.get(parentkey);
    if (updateLastModifiedDateTimer != null) {
        updateLastModifiedDateTimer.cancel();
    }
    TimerTask updateLastModifiedDateTask = new TimerTask() {
        public void run() {
            getPresentationDAO().updateLastModifiedDate(owner, parentkey, System.currentTimeMillis());
        }
    };
    updateLastModifiedDateTimer = new Timer(true);
    updateLastModifiedDateTimer.schedule(updateLastModifiedDateTask, updateDelay);
    timers.put(parentkey, updateLastModifiedDateTimer);

我用 ScheduledFuture 和 ScheduledThreadPoolExecutor 实现了类似的东西。

4

0 回答 0