Как запустить сервлет GWT автоматически в определенный промежуток времени? - PullRequest
1 голос
/ 31 октября 2009

Пожалуйста, помогите мне об этой проблеме ...

В моем приложении у меня есть календарь, где пользователь может установить события на определенный день .. эта информация о событии хранится в базе данных .... теперь я хочу, чтобы мое приложение автоматически отправляло электронное письмо этому пользователю в назначенный день ....

Ответы [ 4 ]

1 голос
/ 01 ноября 2009

Вы должны использовать планировщик (кварц). Большинство приложений используют это. Особенно для отправки писем.

http://www.roseindia.net/quartz/index.shtml

http://www.quartz -scheduler.org /

https://quartz.dev.java.net/

Вы можете запланировать выполнение планировщиком определенных действий за определенный промежуток времени.

1 голос
/ 02 ноября 2009

Вам явно не нужен Quartz API для такой простой задачи таймера.Для этого java.util.TimerTask идеально подходит.

0 голосов
/ 03 ноября 2009

Что касается использования заданий cron, вы можете вызывать URL с заданием cron, которое может быть вашим сервлетом, который обрабатывает логику.

0 голосов
/ 31 октября 2009

Ваш сервлет работает на сервере. Поэтому все, что вам нужно, это создать бесконечный цикл, который регулярно проверяет, нужно ли отправлять электронное письмо.

Примерно так:

public void run()
{
 isRunning = true;
 while (isRunning)
 {
  performSomething();

 try
 {
  Thread.sleep(someInterval);
 }
 catch (InterruptedException e)
 {
  isRunning = false;
 }

}

Где выполнять что-то (); Метод является синхронизированным методом:

public synchronized void performSomething()
...