java的石英调度在特定时间

例如,我想编写一个Java程序打印的“Hello World”在每天上午12点运行,我该如何使用Quartz调度来实现这一目标?java的石英调度在特定时间

Trigger trigger = TriggerUtils.makeDailyTrigger(0, 0); 

trigger.setName("trigger1");

trigger.setGroup("group1");

是这样的?我应该在哪里打印“hello world”方法?

回答:

你可以使用一个表达式来调度作业的执行。例如: -

public static class HelloJob implements Job { 

@Override

public void execute(JobExecutionContext ctx) throws JobExecutionException {

System.out.println("Hello World");

}

}

public static void main(String[] args) throws SchedulerException {

String exp = "0 0 0 1/1 * ? *";

SchedulerFactory factory = new StdSchedulerFactory();

Scheduler scheduler = factory.getScheduler();

scheduler.start();

JobDetail job = JobBuilder.newJob(HelloJob.class).build();

Trigger trigger = TriggerBuilder.newTrigger()

.startNow()

.withSchedule(

CronScheduleBuilder.cronSchedule(exp))

.build();

scheduler.scheduleJob(job, trigger);

}

见http://www.cronmaker.com/用于构建另一种表达。例如0 0/1 * 1/1 * ? *每分钟查看一次输出。另见Cron Expressions

回答:

你必须创建通过实现Job接口,并提供你的执行method.In执行方法的实现自定义的作业可以打印的“Hello World”。然后,你可以安排你的工作是这样

scheduler.scheduleJob(job, trigger); 

一步的详情,请参阅此链接步: Quartz tutorial

回答:

您可以创建此cron表达式。有石英工作,你需要具备以下对象

  1. 工作
  2. 任务将被关联到工作
  3. 最后创建触发器和工作的触发

触发器的关联两个式

简单的触发器,在那里你可以控制工作,你可以运行每分钟或10分钟等。你也可以有额外的参数

initial delay - to kick off 

repeatcount - no of times the job should be executes, if -1 then job will be executed infinitely

在你的情况,你可以使用cron触发器,因为你想每天上午12点运行。

对于以下链接

http://www.mkyong.com/spring/spring-quartz-scheduler-example/

约石英cron表达式的详细信息和示例程序看看这个,看看石英文档

http://quartz-scheduler.org/documentation/quartz-1.x/tutorials/crontrigger

回答:

  1. 下载石英罐中放lib文件夹构建项目
  2. 创建类(工作),从中要安排任务

    import org.apache.log4j.Logger; 

    import org.quartz.Job;

    import org.quartz.JobExecutionContext;

    import org.quartz.JobExecutionException;

    public class MyJob implements Job {

    private Logger log = Logger.getLogger(MyJob.class);

    @Override

    public void execute(JobExecutionContext context) throws JobExecutionException {

    log.debug("Hi....");

    System.out.println("Corn Executing.....");

    }

    }

  3. 的日程表你的任务

    import org.quartz.JobBuilder; 

    import org.quartz.JobDetail;

    import org.quartz.Scheduler;

    import org.quartz.SchedulerException;

    import org.quartz.SchedulerFactory;

    import org.quartz.SimpleScheduleBuilder;

    import org.quartz.Trigger;

    import org.quartz.TriggerBuilder;

    import org.quartz.impl.StdSchedulerFactory;

    public class JobScheduler {

    public static void main(String[] args) {

    // TODO Auto-generated method stub

    try {

    JobDetail job = JobBuilder.newJob(MyJob.class).withIdentity("myjob").build();

    Trigger trigger = TriggerBuilder.newTrigger().withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(30).repeatForever()).build();

    SchedulerFactory schFactory = new StdSchedulerFactory();

    Scheduler scheduler = schFactory.getScheduler();

    scheduler.start();

    scheduler.scheduleJob(job, trigger);

    }catch (SchedulerException e) {

    e.printStackTrace();

    }

    }

    }

以上是 java的石英调度在特定时间 的全部内容, 来源链接: utcz.com/qa/258478.html

回到顶部