开发者

Cron syntax with Java EE 5?

Timer Tasks in Java EE are not very comfortable. Is there any util, to configure timer with cron syntax like "0 20 20 * * "?

I wonder, if it would be a good way to use Quartzinside (clustered) Java EE application. According to http://www.prozesse-und-systeme.de/serverClustering.ht开发者_运维技巧ml (german page) there limits with Quartz and Java EE clustering:

  • JDBC must be used as job store for Quartz
  • Only cluster associated Quartz instances are allowed to use this JDBC job store
  • All cluster nodes must be synchronized to the split second
  • All cluster nodes must use the same quartz.properties file

I would prefer an easier way for configuration of timer service, instead an not Java EE managed scheduler.


Quartz definitely support cron-like syntax (with the CronTrigger) but your requirements are not clear. Also maybe have a look at Jcrontab or cron4j.


As a side note, the ability to declaratively create cron-like schedules to trigger EJB methods is one of the most important enhancement of the Timer Service in EJB 3.1 (using the @Schedule annotation). Below, an example taken from New Features in EJB 3.1:

@Stateless
public class NewsLetterGeneratorBean implements NewsLetterGenerator {

    @Schedule(second="0", minute="0", hour="0",
                  dayOfMonth="1", month="*", year="*")
    public void generateMonthlyNewsLetter() {
        ... Code to generate the monthly news letter goes here...
    }
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜