Spring3.0
以后引入的定时任务工具:spring task
,可以将它比作一个轻量级的Quartz
,而且使用起来很简单,除spring
相关的包外不需要额外的包,而且支持注解和配置文件两种。spring
通过接口TaskExecutor
和TaskScheduler
这两个接口的方式为异步定时任务提供了一种抽象。
XML配置
Spring
提供了task
命名空间,让配置定时任务非常简单。
|
|
说明:ref
参数指定的即任务类,method
指定的即需要运行的方法,cron
指定cronExpression
表达式
注意:<task:schedule-tasks scheduler="scheduler">
这里的scheduler
必须显式指定,否则它只会使用默认的值,默认为单线程的。
任务Job
|
|
TaskExecutor
|
|
task:executor
会注册一个ThreadPoolTaskExecutor执行器,可以使用它的相关属性来配置该执行器。
|
|
pool-size
:线程池大小,如果只是设置了一个值。则corePoolsize和maxPoolSize
都是这个值。queue-capacity
:队列大小rejection-policy
: 队列满的时候,使用的拒绝策略。