当前位置: 首页 > news >正文

成都 网站开发兰州微网站

成都 网站开发,兰州微网站,新余门户网站开发,淘宝客网站如何做SEO目录 前言一、使用 Scheduled 注解二、使用 ScheduledExecutorService三、使用 Spring 的 TaskScheduler四、使用第三方调度框架 前言 在 Spring Boot 中#xff0c;有多种方法来编写定时任务#xff0c;以执行周期性或延迟执行的任务。下面是几种常见的方式 一、使用 Sche… 目录 前言一、使用 Scheduled 注解二、使用 ScheduledExecutorService三、使用 Spring 的 TaskScheduler四、使用第三方调度框架 前言 在 Spring Boot 中有多种方法来编写定时任务以执行周期性或延迟执行的任务。下面是几种常见的方式 一、使用 Scheduled 注解 Spring Boot 提供了 Scheduled 注解可以将该注解应用在方法上以指定方法的执行时间这也是最简单的开启定时任务的方法。 import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component;Component public class ScheduledTasks {Scheduled(fixedRate 10000) // 每10秒执行一次public void doTask() {// 你的任务逻辑} }这种方式非常简单适用于简单的定时任务需求下面是 Scheduled 注解的常用参数 fixedRate以固定的速率执行任务。例如Scheduled(fixedRate 10000) 表示每隔 10 秒执行一次任务。 fixedDelay以固定的延迟执行任务。例如Scheduled(fixedDelay 5000) 表示在上一个任务完成后延迟 5 秒再执行下一个任务。 initialDelay在应用程序启动后首次执行任务的延迟时间。例如Scheduled(initialDelay 3000, fixedRate 10000) 表示在应用启动后等待 3 秒然后每隔 10 秒执行一次任务。 cron使用 Cron 表达式来定义任务的执行时间。Cron 表达式非常灵活可以指定精确的执行时间和日期。例如Scheduled(cron “0 * * * * ?”) 表示每小时执行一次任务。 cron表达式语法 [秒(0-59)] [分(0-59)] [时(0-23)] [日(1-31)] [月(1-12或英文缩写)] [周(0-7或英文缩写)]Cron 表达式还支持一些特殊字符和符号用于更复杂的时间规则 *星号: 表示匹配该字段的任意值例如* 在秒钟字段中表示每秒都触发。 ,逗号: 表示一个列表可以包含多个数值例如1,3,5 在分钟字段中表示每小时的第1、3、5分钟触发。 -连字符: 表示一个范围例如1-5 在分钟字段中表示每小时的第1到5分钟触发。 /斜杠: 表示步长例如*/5 在分钟字段中表示每隔5分钟触发一次。 ?问号: 通常用在日期和星期几字段表示不指定值。 L大写字母L: 通常用在日期和星期几字段表示最后一天或最后一周。 W大写字母W: 通常用在日期字段表示工作日周一到周五最接近指定日期但可能不是准确的日期。 #井号: 通常用在星期几字段表示一个月中的第几个星期几例如6#3 表示每月的第三个星期五。 Cron 表达式含义* * * * * ?每秒钟执行一次任务0 * * * * ?每分钟的第0秒执行任务0 0 * * * ?每小时的第0分0秒执行任务0 0 12 * * ?每天中午12:00执行任务0 0 12 * * MON每周一中午12:00执行任务0 0 12 1 * ?每月1日中午12:00执行任务0 0 12 1 1 ?每年1月1日中午12:00执行任务0 0 * * 1-5 ?工作日周一至周五的每小时执行任务0 0 0 * * ?每天凌晨00:00执行任务0 0 * * SUN每周日的每小时执行任务0 0 8-17 * * ?每天上午8点到下午5点的每小时执行任务0 0/15 * * * ?每15分钟执行一次任务 二、使用 ScheduledExecutorService Java 自带了 ScheduledExecutorService 接口它允许创建并执行定时任务。可以使用 ScheduledThreadPoolExecutor 类来创建一个线程池以执行周期性任务。这种方式更加灵活可以处理复杂的任务。 import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit;public class ScheduledTasks {private final ScheduledExecutorService scheduler Executors.newScheduledThreadPool(1);public void scheduleTask() {scheduler.scheduleAtFixedRate(this::doTask, 0, 10, TimeUnit.SECONDS);}public void doTask() {// 你的任务逻辑} }这种方式适用于需要更多控制的任务如动态任务创建、取消等。 三、使用 Spring 的 TaskScheduler Spring 提供了 TaskScheduler 接口它允许你执行定时任务。你可以使用 Spring 提供的实现类如 ThreadPoolTaskScheduler。 import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler; import org.springframework.scheduling.support.CronTrigger; import org.springframework.stereotype.Component;Component public class ScheduledTasks {private final ThreadPoolTaskScheduler scheduler new ThreadPoolTaskScheduler();public ScheduledTasks() {scheduler.initialize();scheduler.schedule(this::doTask, new CronTrigger(0/10 * * * * ?)); // 每10秒执行一次}public void doTask() {// 你的任务逻辑} }这种方式适用于需要更高级的任务调度如使用 Cron 表达式等。 四、使用第三方调度框架 除了内置的方式你还可以选择使用第三方调度框架如 Quartz Scheduler。Quartz 提供了高度灵活的调度功能允许你配置复杂的任务计划和调度策略。 选择哪种方法取决于你的具体需求。对于简单的定时任务Scheduled 注解通常足够但如果需要更高级的控制和灵活性可能需要考虑其他方式。
http://www.zqtcl.cn/news/480990/

相关文章:

  • 绵阳学校网站建设wordpress 采集站
  • 免费设计软件下载网站大全贵州seo技术培训
  • wordpress网站+搬家自做购物网站多少钱
  • 用自己网站做淘宝客深圳上市公司一览表
  • 如何用图片文字做网站建设部网站安全事故
  • 订制网站网易企业邮箱怎么修改密码
  • 一小时做网站网上免费设计效果图
  • 网站如何注册域名公司主页填什么
  • 南宁国贸网站建设网站跟网页有什么区别
  • 兰州企业 网站建设短链接在线转换
  • 长沙网上商城网站建设方案导航网站系统
  • 网站更换目录名如何做301跳转网站活泼
  • 化妆品网站网页设计怎样在淘宝网做网站
  • 邢台建站湛江海田网站建设招聘
  • 免费个人网站建站能上传视频吗中国舆情在线网
  • 网站开发项目的心得体会惠州建设厅网站
  • 网站小程序怎么做北京单位网站建设培训
  • 北京市专业网站建设广州安全教育平台登录账号登录入口
  • 广州做网站的价格三个关键词介绍自己
  • 基于工作过程的商务网站建设:网页制作扬州网站建设公元国际
  • wordpress著名网站微信公众号怎么做网站链接
  • 长沙网站建设大概多少钱深圳做网站网络营销公司
  • 融资平台排行榜企业网站seo运营
  • 英文手表网站南昌装修网站建设
  • 网站建设要懂哪些技术甘肃园区网络搭建
  • go做的网站微信跳转链接生成器免费
  • 网站开发中怎么设置快捷键怎样打开用sql做的网站
  • 做餐饮企业网站的费用短视频素材免费下载网站
  • 美食优秀设计网站制作网页网站
  • 提供网站建设教学视频做淘宝美工需要知道的网站