首先:在beans.xml文件中引入以下命名空间
xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task.xsd
然后加入:
<!-- 自动扫描web包 ,将带有注解的类 纳入spring容器管理 -->
<context:component-scan base-package="com.**">
<!--第一种:直接加下面注解,开启定时任务-->
<task:annotation-driven/>
<!--第二种:配置定时任务 利用cron表达式-->
<bean id="testTime" class="com.xusoft.spring.TestSpring" />
<task:scheduled-tasks>
<task:scheduled ref="testTime" method="per" cron="3/30 * * * * ?" />
</task:scheduled-tasks>
任务实现:
基于第一种方式:
@Component
public class TestTime {
@Scheduled(cron="0 15 18 * * ? ")
public void testTask(){
for (int i = 0; i < 10; i++) {
System.out.println("lp");
}
}
}
基于第二种:
@Component
public class TestSpring {
public void per() {
System.out.println("time work");
}
}
注意:第二种实现不需要加入@Scheduled()注解
如果报以下异常
nested exception is java.lang.NoClassDefFoundError: org/aopalliance/aop/Advice
则需要引入com.springsource.org.aopalliance-1.0.0.jar