1.web.xml配置
<servlet>
<description></description>
<display-name>CronTriggerTest</display-name>
<servlet-name>CronTriggerTest</servlet-name>
<servlet-class>com.bbin.job.CronTriggerTest</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CronTriggerTest</servlet-name>
<url-pattern>/CronTriggerTest</url-pattern>
</servlet-mapping>
2.CronTriggerTest .java
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.quartz.JobBuilder;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerFactory;
import org.quartz.SimpleScheduleBuilder;
import org.quartz.Trigger;
import org.quartz.TriggerBuilder;
import org.quartz.TriggerKey;
import org.quartz.impl.StdSchedulerFactory;
public class CronTriggerTest extends HttpServlet{
public void init() throws ServletException {
SchedulerFactory schedulerfactory=new StdSchedulerFactory();
SchedulerFactory schedulerfactory1=new StdSchedulerFactory();
SchedulerFactory schedulerfactory2=new StdSchedulerFactory();
Scheduler scheduler=null;
Scheduler scheduler1=null;
Scheduler scheduler2=null;
try{
//job1
scheduler=schedulerfactory.getScheduler();
JobDetail job = JobBuilder.newJob(JobTest.class)
.withIdentity("jobTest")
.build();
Trigger trigger = TriggerBuilder.newTrigger()
.withIdentity(TriggerKey.triggerKey("myTrigger", "myTriggerGroup"))
.withSchedule(SimpleScheduleBuilder.simpleSchedule()
.withIntervalInMilliseconds(6000)
.repeatForever())
.startNow()
.build();
scheduler.scheduleJob(job, trigger);
scheduler.start();
//--JOB2
Thread.sleep(1000);
scheduler1=schedulerfactory1.getScheduler();
JobDetail job1 = JobBuilder.newJob(JobTest2.class)
.withIdentity("jobTest2")
.build();
Trigger trigger1 = TriggerBuilder.newTrigger()
.withIdentity(TriggerKey.triggerKey("myTrigger1", "myTriggerGroup1"))
.withSchedule(SimpleScheduleBuilder.simpleSchedule()
.withIntervalInMilliseconds(1000*60*60*24*20)
.repeatForever())
.startNow()
.build();
scheduler1.scheduleJob(job1, trigger1);
//
scheduler1.start();
//--JOB3
Thread.sleep(1000);
scheduler2=schedulerfactory2.getScheduler();
JobDetail job2 = JobBuilder.newJob(JobTestCenter.class)
.withIdentity("JobTestCenter")
.build();
Trigger trigger2 = TriggerBuilder.newTrigger()
.withIdentity(TriggerKey.triggerKey("myTrigger2", "myTriggerGroup2"))
.withSchedule(SimpleScheduleBuilder.simpleSchedule()
.withIntervalInMilliseconds(1000*15)
.repeatForever())
.startNow()
.build();
scheduler2.scheduleJob(job2, trigger2);
scheduler2.start();
}catch(Exception e){
e.printStackTrace();
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
3.job1,这个示例是和其他的job一样的 只需要自己在里面完成自己的业务就OK了
package com.bbin.job;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Date;
import java.util.List;
import java.util.Random;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import com.bbin.dao.BbinDao;
import com.bbin.dao.DBUtil;
import com.bbin.pojo.RealtimeData;
public class JobTest implements Job {
ResultSet rs=null;
Connection conn = null;
Statement stmt = null;
PreparedStatement pstmt = null;
public void execute(JobExecutionContext arg0) throws JobExecutionException {
//这里面是你自己的任务以及业务
}
}
注:jar下载地址 https://download.csdn.net/download/qq_37996327/11143394