我已经开发了一个网络爬虫,爬行以启动URL作为种子参数。如果可能的话,我希望允许用户根据作业来安排此任务。
目前我正在使用Spring 3.1.2和Hibernate。我需要给用户一个前端,它接收cronJob参数,并在此基础上运行爬虫。可以用弹簧来做吗。
我读了一些关于Quartz的文章,但是在SO或其他网站上的文章一点也不清楚,或者它们不完整,以便充分理解如何在春季实现调度器。
我知道它有三个基本要素
我希望有人能指引我正确的方向。
发布于 2012-08-28 15:59:16
石英调度器正是适合这项工作的工具。由于某种原因,几乎所有的教程都集中在用XML定义启动时的作业,而Quartz完全能够在运行时调度作业。
您可以并且应该利用Spring来启动Quartz Scheduler,但是您可以通过代码直接与它交互。下面是一个简单的示例from the documentation
JobDetail job = newJob(SimpleJob.class)
.withIdentity("job1", "group1")
.build();
CronTrigger trigger = newTrigger()
.withIdentity("trigger1", "group1")
.withSchedule(cronSchedule("0/20 * * * * ?"))
.build();
scheduler.scheduleJob(job, trigger);在这里,您定义了一个作业(要运行的Java代码段),触发器(当要运行它时,用户可以提供任何有效的CRON表达式),并通过调度它来包装它。调度器实例可以通过Spring注入。弹簧也将处理适当的关机。
https://stackoverflow.com/questions/12163028
复制相似问题