如何在某个特定的时间间隔内自动运行gwt servlet?

时间:2009-10-31 12:32:27

标签: gwt servlets scheduling

请帮我解决这个问题...

在我的应用程序中,我有日历,用户可以在其中设置特定日期的事件。 此事件信息存储在数据库中.... 现在我希望我的应用程序在该指定日期自动向该用户发送电子邮件....

4 个答案:

答案 0 :(得分:1)

你必须使用调度程序(quartz)。大多数应用程序都在使用它。特别是发送邮件。

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

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

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

您可以安排调度程序在特定时间间隔内执行某些操作。

答案 1 :(得分:1)

对于这样一个简单的计时器任务,您并不需要Quartz API。对于这个java.util.TimerTask非常合适。

答案 2 :(得分:0)

您的servlet正在后端运行。所以你需要的是创建一个无限循环,定期检查是否需要发送电子邮件。

这样的事情:

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

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

}

performSomething();方法是一种同步方法:

public synchronized void performSomething()

答案 3 :(得分:0)

如何使用cron作业,您可以使用cron作业调用URL,该作业可以是处理逻辑的servlet。