在后台处理中,会有很多需要定时执行的任务,spring中就有配置可以实现定时任务
1、在servlet-config.xml中配置如下信息
<!-- 开启定时任务 -->
<task:scheduled-tasks>
<!-- 每隔1小时刷新执行一次 -->
<task:scheduled ref="orderStockTimer" method="deblockingStock" cron="0 0 1/1 * * ?"/>
</task:scheduled-tasks>
其中 cron匹配可以自行百度查询匹配规则
其中orderStockTimer 是自己实现的定时任务类,将会执行orderStockTimer中的deblockingStock方法,以下是orderStockTimer代码
package com.yjh.mobile.scheduler;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.yjh.core.mapper.goods.GoodsAllocateMapper;
import com.yjh.core.model.goods.GoodsAllocate;
import com.yjh.mobile.controller.deal.OrderController;
import com.yjh.mobile.listener.CommonInterceptor;
/**
* 每隔一小时调用该类
* @Title: OrderStockTimer.java
* @Package com.yjh.mobile.scheduler
* @Description: TODO
* @author atao
* @date 2015-1-13 下午5:03:46
* @version V1.0
*/
@Service
public class OrderStockTimer {
private final Logger logger = LoggerFactory.getLogger(CommonInterceptor.class);
@Autowired
private OrderController orderController;
@Autowired
private GoodsAllocateMapper goodsAllocateMapper;
public void deblockingStock(){
logger.debug("*************begin call deblockingStock***********************");
logger.debug("*************end call deblockingStock***********************");
}
}
这样就完成了后台每隔一小时将调用该方法