spring定时任务Quartz
2016-01-04 16:40
302 查看
在开发中使用到一种场景,需要在每天凌晨计算昨天一天的数据,这会可以用定时器来解决。
定时器可以用jdk自带的Timer,也可以使用spring集成的Quartz,这里描述Quartz的使用。
首先依赖pom:
写业务类:(业务类无需实现任何接口和继承类)
在spirng.xml中配置定时器:(核心)
运行Jobs方法即启动定时器
定时器可以用jdk自带的Timer,也可以使用spring集成的Quartz,这里描述Quartz的使用。
首先依赖pom:
<dependency> <groupId>org.opensymphony.quartz</groupId> <artifactId>quartz-all</artifactId> <version>1.6.1</version> </dependency>
写业务类:(业务类无需实现任何接口和继承类)
public class Jobs { public void worker() { System.out.println(DateUtil.getCurrentTime()+"worker ...."); } }
在spirng.xml中配置定时器:(核心)
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="jobs" class="com.jd.jr.search.box.Test.Jobs"> </bean> <!-- 定义jobTask--> <bean id="jobTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <!-- 调用的类--> <property name="targetObject" ref="jobs"></property> <!-- 调用的方法--> <property name="targetMethod" value="worker"></property> </bean> <!-- 定义触发时间--> <bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean"> <!-- 将jobtask加载进去--> <property name="jobDetail" ref="jobTask"></property> <!-- 定义cron表达式--> <property name="cronExpression"> <value>0 */5 * * * ?</value> </property> </bean> <!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序 --> <bean id="startQuartz" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="doTime"/> </list> </property> </bean> </beans>
运行Jobs方法即启动定时器
相关文章推荐
- Java——抽象类
- 配置springMVC之后,引入js,css等资源处理
- Java——多态
- eclipse不自动弹出提示(alt+/快捷键失效)
- myeclipse启用/关闭debug模式
- JDk 内部分工具 简述
- java线程池分析和应用
- Java并发编程:线程间协作的两种方式:wait、notify、notifyAll和Condition
- java 传入多个参数
- spring的jar包下载
- Java JDK Download
- 【慕课笔记】第一章 JAVA初体验 第4节 使用Eclipse开发java程序
- Java并发编程:Timer和TimerTask(转载)
- 25个Java机器学习工具&库(收藏)
- Java并发编程:并发容器之CopyOnWriteArrayList(转载)
- spring的@Transactional事务处理详解
- Java并发编程:阻塞队列
- java使用hazelcase简单示例
- spring aop的三个关键概念
- 深入理解Java的接口和抽象类