java 定时任务
来源:互联网 发布:数据分析系统技术选型 编辑:程序博客网 时间:2024/05/16 06:46
定时任务,顾名思义就是到具体目个时间点需要运行的人物。
不依赖Spring创建定时任务的话,我们在程序中启动一个线程,线程作为我们的定时任务.这种处理方式简单粗暴,
但是实现起来,定时这块比较麻烦
利用quartz包,实现我们的定义任务更方便一点。
创建定时任务步骤
1.创建一个计划调度对象SchedulerFactoryBean 不需要创建
2.创建一个触发器(也就是任务什么时候执行) SimpleTriggerFactoryBean 不需要创建
3.创建具体的工作(Job) JobDetailFactoryBean or MethodInvokingJobDetailFactoryBean 不需要创建
4.具体任务(Task,一个job可能包含多个task) 创建
pom.xml配置如下
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>test-quarz</groupId> <artifactId>com.mytest</artifactId> <version>1.0-SNAPSHOT</version> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>3.1.4.RELEASE</version> </dependency> <!-- Spring 3 dependencies --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>3.1.2.RELEASE</version> </dependency> <!-- QuartzJobBean in spring-context-support.jar --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>3.1.2.RELEASE</version> </dependency> <!-- Spring + Quartz need transaction --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>3.1.2.RELEASE</version> </dependency> <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.0.0</version> </dependency> </dependencies></project>
创建Task
public class PrintTask { public void printMe() { System.out.println("Spring 3 + Quartz 1.8.6 ~"); }}
Spring配置文件
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="runMeTask" class="com.mytest.PrintTask"> <bean id="runMeJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject" ref="runMeTask" /> <property name="targetMethod" value="printMe" /></bean> <!-- Simple Trigger, run every 5 seconds --> <bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean"> <property name="jobDetail" ref="runMeJob" /> <property name="repeatInterval" value="5000" /> <property name="startDelay" value="0"/> </bean> <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="simpleTrigger" /> </list> </property> </bean> </beans>
0 0
- java定时任务,每天定时执行任务
- java定时任务,每天定时执行任务
- Java定时任务,每天定时执行任务
- java定时任务,每天定时执行任务
- javaweb 定时任务 java定时任务
- java定时任务,每天定时执行任务
- java定时任务,每天定时执行任务
- java定时任务,每天定时执行任务
- java定时任务,每天定时执行任务
- java定时任务,每天定时执行任务
- java定时任务,每天定时执行任务
- java定时任务 每天定时执行任务
- java定时任务,每天定时执行任务
- Java 定时任务 与 Spring定时任务
- java定时任务,每天定时执行任务
- java定时任务,每天定时执行任务
- java定时任务
- 定时任务实现 java
- Linux 日志清除脚本
- VBR与CBR的区别是什么?
- cocos2d-x 添加中文方法
- iBatis里面的数据类型与java里面的数据类型的对应关系,javaType的必要性
- 多线程计数,怎么保持计数准确
- java 定时任务
- android 反编译
- Hadoop实战-初级部分 之 Hadoop IO
- LVS负载均衡
- HDU4493
- [易飞]浅析设计导入导出规则
- [Linux] Bash的环境配置文件
- python 中的property模块
- 用于查询的日期类型转换帮助类