创建个class文件 例:FinanceJob
package com.duosen.gate.job;
import java.util.List;
import org.apache.log4j.Logger;
import com.duosen.gate.constant.ServiceConfig;
import com.duosen.gate.finance.domain.Finance;
import com.duosen.gate.ims.car.domain.CarInfo;
import com.duosen.gate.utils.DateUtil;
public class FinanceJob {
private static final Logger logger = Logger.getLogger(FinanceJob.class);
//定时检测车辆设备服务到期
public void startJob(){
try {
logger.info("系统自动检测内部管理中定时检测车辆设备服务到期任务执行 ......");
//carInfoToFinanceTask(); //应收款信息
} catch (Exception e) {
logger.error("系统自动检测内部管理中定时检测车辆设备服务到期任务异常" + e);
e.printStackTrace();
}
}
/**
* 2.满足条件车辆信息写入应收款中
*/
private void carInfoToFinanceTask() {
//这里面写自己自动任务要做的事。
}
public static void main(String[] args) {
FinanceJob financeJob = new FinanceJob();
financeJob.carInfoToFinanceTask(); //应收款信息
}
}
新建一个spring文件 例:applicationContext-job.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!--
车辆应收款
-->
<bean name="financeTaskJob" class="com.duosen.gate.job.FinanceJob"></bean>
<bean id="methodFinanceTaskJobTask"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<ref bean="financeTaskJob" />
</property>
<property name="targetMethod">
<value>startJob</value>
</property>
</bean>
<bean id="financeTaskJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail">
<ref bean="methodFinanceTaskJobTask" />
</property>
<property name="cronExpression">
<value>0/60 * * * * ?</value>
<!--
每一分钟检测一次
-->
<!--
<value>0 0 23 ? * *</value>
每天下午23:00检测
-->
<!--
<value>0 0/30 0-23 * * ?</value>
每半个小时执行一次
-->
</property>
</bean>
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref local="financeTaskJobTrigger" />
</list>
</property>
</bean>
</beans>
<!--
字段 允许值 允许的特殊字符
秒 0-59 , - * /
分 0-59 , - * /
小时 0-23 , - * /
日期 1-31 , - * ? / L W C
月份 1-12 或者 JAN-DEC , - * /
星期 1-7 或者 SUN-SAT , - * ? / L C #
年(可选) 留空, 1970-2099 , - * /
表达式意义
<value>0 0/100 * * * ?</value>
附表: "0 0 12 * * ?" 每天中午12 点触发
"0 15 10 ? * *"每天上午10:15 触发
"0 15 10 ** ?" 每天上午10:15 触发
"0 15 10 * * ? *" 每天上午10:15 触发
"0 15 10 * * ? 2005"2005 年的每天上午10:15 触发
"0 * 14 * * ?"在每天下午2 点到下午2:59 期间的每1 分钟触发
"0 0/5 14 * * ?"在每天下午2 点到下午2:55 期间的每5 分钟触发
"0 0/5 14,18 * * ?"在每天下午2 点到2:55期间和下午6 点到6:55 期间的每5 分钟触发
"0 0-5 14 * * ?"在每天下午2 点到下午2:05 期间的每1 分钟触发
"0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:10 和2:44 触发
"0 15 10 ? * MON-FRI"周一至周五的上午10:15 触发
"0 15 10 15 * ?" 每月15 日上午10:15 触发
"0 15 10 L * ?"每月最后一日的上午10:15 触发
"0 15 10 ? * 6L" 每月的最后一个星期五上午10:15 触发
"0 15 10 ? *6L 2002-2005" 2002 年至2005 年的每月的最后一个星期五上午10:15 触发
"0 15 10 ? * 6#3"每月的第三个星期五上午10:15 触发 至于每个符号 看看例子就好了. 很简单.
-->