spring task定时器笔记
定时器有两种方式
1.延迟启动
<bean id="timerTaskRunnerChain" class="bingo.uam.task.TimerTaskRunnerChain"> <property name="timerTasks"> <list> <bean class="bingo.uam.task.XXXXTask"></bean> </list> </property> </bean> <bean id="btBuildTimerTask" class="org.springframework.scheduling.timer.ScheduledTimerTask"> <!-- 设置启动延迟 --> <property name="delay"> <value>3600000</value> <!-- 1个小时后启动 --> </property> <!-- 后续延迟 --> <property name="period"> <value>3600000</value> </property> <!-- 指定触发器信息 --> <property name="timerTask"> <ref local="timerTaskRunnerChain" /> </property> </bean> <!-- 使用TimerFactoryBean类,你可以让Spring使用配置创建触发器,并为一组指定的ScheduledTimerTask bean自动创建Timer实例。 --> <bean id="timerFactory" class="org.springframework.scheduling.timer.TimerFactoryBean"> <property name="scheduledTimerTasks"> <list> <ref local="btBuildTimerTask" /> </list> </property> </bean>
2.某个设定时刻启动
<!-- 配置Quartz, 用于凌晨2点启动 --> <bean id="blogTimerTask" class="bingo.uam.task.XXXXTask"/> <bean id="blogSchedulerJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject" ref="blogTimerTask"/> <property name="targetMethod" value="run"/> <!--启动的方法 --> <property name="concurrent" value="false"/> </bean> <bean id="blogCronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean" > <property name="jobDetail" ref="blogSchedulerJobDetail"/> <property name="cronExpression"> <!-- 秒 分 时 日 月 年 --> <value>0 0 2 * * ?</value> <!-- 每天两点启动 --> </property> </bean> <bean id="blogSchedulerFactory" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref local="blogCronTrigger"/> </list> </property> </bean>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)