1.导入jar包



2.配置applicationContext.xml文件

<!-- 任务调度1 -->
<!-- bean id="simpleJob" class="com.shprj.quartz.SimpleJob"></bean>
<bean id="simpleJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="simpleJob"></property>
<property name="targetMethod" value="showTime"></property>
</bean>
<bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
<property name="jobDetail" ref="simpleJobDetail" />
<property name="startDelay" value="1000" />
<property name="repeatInterval" value="2000" />
</bean>
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="jobDetails">
<list>
<ref bean="simpleJobDetail"/>
</list>
</property>
<property name="triggers">
<list>
<ref bean="simpleTrigger"/>
</list>
</property>
</bean-->
<!-- 任务调度2 -->
<!-- bean id="firstJobDetail" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
<property name="jobClass" value="com.shprj.quartz.FirstJobDetail"></property>
</bean>
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="firstJobDetail" />
<property name="cronExpression" value="0/5 * * ? * *" />
</bean>
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cronTrigger"/>
</list>
</property>
</bean-->
<!-- 任务调度3 注解 -->
<task:annotation-driven />

一共三种配置方法

1.

applicationContext.xml:

//simpleJob指定任务操作
< bean id="simpleJob" class="com.shprj.quartz.SimpleJob"></bean>
<bean id="simpleJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="simpleJob"></property>
<property name="targetMethod" value="showTime"></property>
</bean>
<bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
<property name="jobDetail" ref="simpleJobDetail" />
<property name="startDelay" value="1000" />开始时间
<property name="repeatInterval" value="2000" />间隔时间
</bean>
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="jobDetails">
<list>
<ref bean="simpleJobDetail"/>
</list>
</property>
<property name="triggers">
<list>
<ref bean="simpleTrigger"/>
</list>
</property>
</bean>

simpleJob.java:

package com.shprj.quartz;

import java.util.Date;

public class SimpleJob {

	public void showTime(){
System.out.println("简单任务1:"+new Date().toLocaleString());
} }

Tomcat启动就会自动执行

2.

applicationContext.xml:

<bean id="firstJobDetail" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
<property name="jobClass" value="com.quartz.FirstJobDetail"></property>
</bean>
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="firstJobDetail" />
<property name="cronExpression" value="0 0 20 * * ?" />这里写cron表达式
</bean>
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cronTrigger"/>
</list>
</property>
</bean>

firstJobDetail.java:

package com.quartz;

import java.util.Date;

import com.dao.PianoRecordDao;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.scheduling.quartz.QuartzJobBean; public class FirstJobDetail extends QuartzJobBean { @Override
protected void executeInternal(JobExecutionContext arg0) throws JobExecutionException {
PianoRecordDao pianoRecordDao = new PianoRecordDao();
int i = pianoRecordDao.insert();
System.out.println("Quartz任务执行!"); } }

Tomcat启动自动执行

3.没看,,以后写

参考:https://blog.csdn.net/noaman_wgs/article/details/80984873

最新文章

  1. .NET Core RC2/RTM 明确了时间表
  2. Socket网络编程-基础篇
  3. ahjesus让nodejs支持dotjs模板
  4. 【Hibernate】Hibernate系列5之检索策略
  5. Linux Mint 没有 language support 语言支持解决方案
  6. js的数组操作
  7. .Net组件程序设计
  8. Recording and playing back data
  9. 认识Applet
  10. CSS属性选择器和部分伪类
  11. oracle instantclient_11_2插件安装
  12. HDU 1075 字符串映射(map)
  13. Kay and Snowflake CodeForces - 685B (重心, 好题)
  14. vue中在页面渲染完之后获取元素(否则动态渲染的元素获取不到)
  15. C++ STL 的底层数据结构实现
  16. Mysql修改密码办法
  17. 数据流滑动窗口平均值 &#183; sliding window average from data stream
  18. WINDOWS操作系统中可以允许最大的线程数
  19. 为什么gitHub提交记录显示作者名称是unknow?
  20. 【枚举暴力】【UVA11464】 Even Parity

热门文章

  1. Python之浅谈继承
  2. sql 更新时 实现 数字字段自加1
  3. 让对象拥有状态——C#中的状态模式
  4. 大厂程序员因厌恶编程,辞去月薪2w+的工作去当司机?
  5. Linux文件权限学习笔记
  6. sql多列排序
  7. ORA-39257: Data cannot be remapped for more than 10 columns.
  8. 日期推算:datetime
  9. scrapy(四): 爬取二级页面的内容
  10. JVM 专题十四:本地方法接口