admin管理员组文章数量:1794759
spring定时器的使用——schedule
applicationContext-schedule.xml配置:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="www.springframework/schema/beans" xmlns:context="www.springframework/schema/context" xmlns:p="www.springframework/schema/p" xmlns:aop="www.springframework/schema/aop" xmlns:tx="www.springframework/schema/tx" xmlns:xsi="www.w3/2001/XMLSchema-instance" xmlns:task="www.springframework/schema/task" xsi:schemaLocation="www.springframework/schema/beans www.springframework/schema/beans/spring-beans-4.0.xsd www.springframework/schema/context www.springframework/schema/context/spring-context-4.0.xsd www.springframework/schema/aop www.springframework/schema/aop/spring-aop-4.0.xsd www.springframework/schema/tx www.springframework/schema/tx/spring-tx-4.0.xsd www.springframework/schema/util www.springframework/schema/util/spring-util-4.0.xsd www.springframework/schema/task www.springframework/schema/task/spring-task.xsd"> <task:annotation-driven scheduler="schedule" executor="executor"/> <!-- 在执行定时任务时最多启用五个线程 --> <task:scheduler id="schedule" pool-size="5"/> <!-- 与@Async配合使用,会在调度线程调用该任务时启用一个线程池,线程最大数为5,最小数为2,缓存任务为200,多于200的拒绝策略为丢弃 --> <task:executor id="executor" pool-size="5" keep-alive="2" queue-capacity="200" rejection-policy="ABORT"/> <context:annotation-config /> <context:component-scan base-package="****"/> </beans>applicationContext-root.xml中引入applicationContext-schedule.xml:
<import resource="classpath:applicationContext-schedule.xml" />web.xml的配置:
<context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext-root.xml</param-value> </context-param>java类中的写法:
@Scheduled(cron = "0 0 0/5 * * ?") void syncCaseStatus() { System.out.println("================定时器============="); }总结:1.java类所在的包要跟applicationContext-schedule.xml中配置的扫描包对应。 2.spring中schedule默认是单线程的,要开启多线程需要加上applicationContext-schedule.xml中的配置 3.注意scheduler 和executor 配置间的差别。
版权声明:本文标题:spring定时器的使用——schedule 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686479354a72134.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论