如何在spring中配置定时任务
1个回答
展开全部
在spring 中 基于注解的 定时配置很简单,只需要三步哦,如下:
1、在类名前加@Component注解,标记该bean,也就是配置扫描标记。
2、在该类下的方法前加定是配置注解,@Schedule("cron= 0/30 * * * * *")。
3、添加配置文件(如下)。
实例如下:
1、class源文件。
package com.iss.ole.cggl.quartz;
import org.springframework.scheduling.annotation.Scheduled;
/**
* @function 订单计算 定时任务
* 1、试制订单定时计算
* a、车型拆分成零件需求
* b、需求生成订单明细
* 2、试装订单定时计算
* 3、工料废订单定时计算
* @author zhoujian
* @date 2014/10/29
*/
@Component
public class Quartz extends BaseBiz{
/** 车型拆分 成零件 BIZ*/
private PlanManagerBiz planManagerBiz;
/** 车型拆分为毛需求 */
@Scheduled(cron="0 0 06 * * ? ")
public void convertVehicleToParts() {
try {
planManagerBiz.createPartsList();
} catch (BaseException e) {
logger.error("");
e.printStackTrace();
}
}
public PlanManagerBiz getPlanManagerBiz() {
return planManagerBiz;
}
public void setPlanManagerBiz(PlanManagerBiz planManagerBiz) {
this.planManagerBiz = planManagerBiz;
}
}
2、配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:task="http://www.springframework.org/schema/task"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
">
<!-- 扫描有相关标记的bean,初始化,交给spring管理-->
<context:component-scan base-package="com.iss.ole.cggl.quartz" />
<!-- 注入属性-->
<bean id="quartz" class="com.iss.ole.cggl.quartz.Quartz">
<property name="planManagerBiz">
<ref bean="planManagerBiz"/>
</property>
</bean>
</beans>
当然,你也可以把定时设置配置到配置文件中,不过没有注解来的快。思路是一样的哦。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询