首先:在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