Quart simple

run

 

 

/*
 * Copyright 2005 - 2009 Terracotta, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy
 * of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *  
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations
 * under the License.
 *
 */

package com.tht.common.quartz;

import java.util.Date;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.quartz.CronTrigger;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerFactory;
import org.quartz.SchedulerMetaData;
import org.quartz.impl.StdSchedulerFactory;

import com.tht.common.properties.PropertiesUtil;

/**
 * This Example will demonstrate all of the basics of scheduling capabilities of
 * Quartz using Cron Triggers.
 *
 * @author Bill Kratzer
 */
public class Run {
 static Logger log = LoggerFactory.getLogger(Run.class);

    public void run() throws Exception {
       

 

        // First we must get a reference to a scheduler
        SchedulerFactory sf = new StdSchedulerFactory();
        Scheduler sched = sf.getScheduler();

 

        // jobs can be scheduled before sched.start() has been called
        JobDetail job =null;
        CronTrigger trigger=null;
        Date ft =null;
       String strExpression=PropertiesUtil.getProperties("properties/run.properties").getProperty("timing");
       
          job = new JobDetail("job3", "group1", SimpleJob.class);
         
          /*
        trigger = new CronTrigger("trigger3", "group1", "job3", "group1",
                "0 0/1 8-18 * * ?");
        */
        /*  trigger = new CronTrigger("trigger3", "group1", "job3", "group1",
          "0/20 * * * * ?");*/
         
          trigger = new CronTrigger("trigger3", "group1", "job3", "group1",strExpression);
        sched.addJob(job, true);
        ft = sched.scheduleJob(trigger);
        log.info(job.getFullName() + " has been scheduled to run at: " + ft
                + " and repeat based on expression: "
                + trigger.getCronExpression());

       
        sched.start();

 


    }

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

 
        Run example = new Run();
       example.run();
    }

}

 

 

 

 

simple job

 

 

/*
 * Copyright 2005 - 2009 Terracotta, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy
 * of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *  
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations
 * under the License.
 *
 */

package com.tht.common.quartz;

import java.util.Date;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;


/**
 * <p>
 * This is just a simple job that gets fired off many times by example 1
 * </p>
 *
 * @author Bill Kratzer
 */
public class SimpleJob implements Job {

    private static Logger _log = LoggerFactory.getLogger(SimpleJob.class);

    /**
     * Quartz requires a public empty constructor so that the
     * scheduler can instantiate the class whenever it needs.
     */
    public SimpleJob() {
    }

    /**
     * <p>
     * Called by the <code>{@link org.quartz.Scheduler}</code> when a
     * <code>{@link org.quartz.Trigger}</code> fires that is associated with
     * the <code>Job</code>.
     * </p>
     *
     * @throws JobExecutionException
     *             if there is an exception while executing the job.
     */
    public void execute(JobExecutionContext context)
        throws JobExecutionException {

        // This job simply prints out its job name and the
        // date and time that it is running
        String jobName = context.getJobDetail().getFullName();
        _log.info("Project start: " + jobName + " executing at " + new Date());
        String[] strs={""};
       System.out.println("执行了");
    }

}

你可能感兴趣的:(simple)