Как запланировать (и сбросить) задачу программно с помощью SpringFramwork? - PullRequest
5 голосов
/ 06 января 2011

Есть ситуация, когда я хочу вызвать метод по истечении некоторого заданного времени, например, 30 секунд или 5 минут.

Время должно быть настроено во время выполнения, значит, я должен иметь возможность динамически изменять время с 5 до 3 минут (сбросить таймер на новый интервал программно)

Я занимаюсь разработкой динамического веб-проекта с использованием Spring Framework.

Я проверил классы Quartz и Timer, но они, кажется, читают конфигурацию XML для таких параметров, как delay, repeatInterval и т. Д.

Как я могу это сделать? Предоставляет ли Spring какую-либо поддержку для этого?

Заранее спасибо.

1 Ответ

9 голосов
/ 06 января 2011

Самый простой способ - настроить и внедрить экземпляр чего-либо, реализующего интерфейс Spring * TaskScheduler (например, ThreadPoolTaskExecutor).Это предоставляет различные методы для планирования задач для отложенного выполнения.

Кварц излишне для этого.

...