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

创建平台网站下载链接空间做子网站

创建平台网站下载链接,空间做子网站,梧州做网站的公司,上哪里建设个人网站Spring Task/Spring Scheduler 傻傻分不清 首先做一下“名词解释”#xff0c;分清楚这两者的区别#xff1a; Spring Task Spring Task 是 Spring 框架自带的一个任务调度模块#xff0c;提供了基本的任务调度功能。它是通过 Java 的 Timer 和 TimerTask 类来实现的分清楚这两者的区别 Spring Task Spring Task 是 Spring 框架自带的一个任务调度模块提供了基本的任务调度功能。它是通过 Java 的 Timer 和 TimerTask 类来实现的这两个类提供了一种简单的方式来安排和执行重复性任务。Spring Task 可以通过Scheduled注解将方法标记为定时任务并指定任务的触发条件、执行时间间隔等属性。Spring Task 适用于简单的定时任务和重复性任务但在处理复杂任务、并发任务或需要更高级功能的场景下有限。 Spring Scheduler Spring Scheduler 也称为 Spring Scheduling。 Spring Scheduling 是 Spring 框架对任务调度的一种增强支持建立在 Spring Task 基础上。它使用了一个更强大、灵活且可扩展的任务调度器接口例如TaskScheduler和ThreadPoolTaskScheduler。Spring Scheduling 提供了比 Spring Task 更多的特性和配置选项如异步执行任务、并发控制、任务取消和动态调度等。它还提供了更多的任务触发选项和灵活的表达式语法例如 Cron 表达式。 总结起来Spring Task 是 Spring 框架自带的一个简单任务调度模块提供了基本的定时任务功能而 Spring Scheduling 是对任务调度的增强支持提供了更多特性和配置选项适用于更复杂的任务调度需求。如果您只需要简单的定时任务可以使用 Spring Task如果需要更丰富的任务调度功能可以选择 Spring Scheduling。 本组件简介 大家都知道 Spring Scheduler 好用和怎么用但它没有一个像 XXL-Job 有个后台界面的好像不太完整于是笔者打算为 Spring Scheduler 提供一个可视化的操作界面虽然赶不上 XXL-Job 那么强大但也算弥补其中缺失的一环。它支持在线监控执行的任务、支持动态修改任务状态、暂停/恢复任务以及终止运行中任务。 另外本组件的特色就是非常简单或者说“轻量级”只有两个主要的类和一个前端静态 html 组成Java 的话总共不超过 500 行代码。 核心原理 我们先进入原理层面谈谈如果读者觉得太难可以先略过。 核心 ScheduleHandler 类连完整的注释才 160 行。其作用如下 主要围绕 Spring 核心原理从加载机制中得到哪些是定时器的方法收集起来以便统一管理如何对任务控制呢通过ScheduledTask和ScheduledFuture可以扩展实现动态修改任务状态、暂停/恢复任务以及终止运行中任务。ScheduledTask 表示所有被Scheduled注解修饰的任务如何得到 ScheduledTask 对象呢这就涉及 Spring 加载机制了。众所周知Spring 是一个开放系统暴露了大量开放的接口供用户使用。其中原理我们不妨看看 ScheduleHandler源码就知道。 控制器ScheduledController这是提供 API 接口的。任务可以得到了可是怎么对其管理呢我们很自然地想到用数据库来进行 CRUD 的管理但问题又来了Spring 任务连个名称或者 id 都没有怎么做数据库管理呢笔者想了下就是通过类名称和执行方法组成唯一的条件就是一个独特的任务记录可以进行入库和管理。这个类除了调用上述的 Spring ScheduledTask API 外还有涉及的数据库的 CRUD 操作。其中一个怎么停止任务的地方比较巧妙地说。前端 task.html如下图所示非常简单 就一个 HTML仅仅依赖 vue.jsCDN 加载而且 js/css 全在 HTML 里面都是原生手写的直接双击浏览器打开即可使用当然你接口前提必须是跨域的。非常方便你整合。 后端依赖的话是我的框架AJAXJS当然是非常轻量级的连 MyBatis 都没依赖。如果你不打算依赖 AJAXJS把这两个类抠出来也是非常简单的。 另外该组件在 Spring MVC 5 下调试通过无须 Spring Boot 亦可。 源码在https://gitee.com/sp42_admin/ajaxjs/tree/master/aj-backend/aj-framework/aj-framework/src/main/java/com/ajaxjs/framework/spring/scheduled。 使用配置 Spring 工程配置如下 // 初始化 Spring 任务调度器 Bean public ThreadPoolTaskExecutor taskExecutor() {ThreadPoolTaskExecutor pool new ThreadPoolTaskExecutor();pool.setCorePoolSize(5); // 指定线程数pool.setMaxPoolSize(10);pool.setWaitForTasksToCompleteOnShutdown(true);return pool; }// 初始化任务调度管理 Bean(initMethod init) public ScheduleHandler scheduleHandler() {return new ScheduleHandler(); }// 注入任务调度的控制器 Bean public ScheduledController scheduledController() {return new ScheduledController(); }前端页面源码在这里。你要简单修改下接口地址什么的。 使用限制 对于固定频率的fixedRate因为不能获取其类和方法故不能加入到任务管理中 //每隔2秒执行一次 Scheduled(fixedRate 2000) public void testTasks() {System.out.println(定时任务执行时间 dateFormat.format(new Date())); }但幸运地可以转化为 Cron 表达式的 Scheduled(cron 0/2 * * * * *) // cron 表达式每5秒执行 public void doTask() {System.out.println(我是定时任务~ ATOMIC_LONG.getAndIncrement()); }参考 从零搭建开发脚手架 基于Spring Task实现动态管理任务 和本文一个思想但它的好像对 Task 包了一层显得有点复杂。不过考虑到高并发的设计Spring Boot Task 定时任务升级启动、停止、变更执行周期 说原理的Scheduled定时任务管理界面 本组件就是从它启发的——大幅度重构Schedule 调度系统设计单机版 可惜看不到源码了轻量级分布式任务调度框架 Light Task Schedule 这个其实很庞大跟复杂看看就好在线Cron表达式生成器SandGlass 是一款为 java 设计的分布式任务调度工具 其他同类的界面参考
http://www.zqtcl.cn/news/698700/

相关文章:

  • 东莞做网站注意事项如何查网站的百度快照
  • 做资源网站需要什么郑州哪有做网站的公司
  • 不属于网站架构开发一个游戏软件多少钱
  • 电子商务网站建设 市场分析广州有哪些做网站专业的公司
  • 广州网站建设南宁厦门城健建设有限公司网站
  • 课程网站开发的研究现状网页设计制作音乐网站
  • 建设工程法律网站网站美工做专题尺寸多少?
  • 甘肃制作网站godaddy wordpress空间
  • 做淘宝客网站要多少钱心理网站模板
  • 建设手机网站经验分享网站外链建设实例
  • 乔拓云网站注册外贸个人网站
  • 个人怎么做动漫短视频网站建设银行银监会官方网站
  • 长沙网站seo技术厂家山东济宁网站建设设计
  • 外贸网站制作有哪些做体育的网站
  • 广州哪里有做网站推广最牛的网站建
  • 建设网站用户名是什么原因世界500强企业排名2020
  • 创建网站要找谁手机网站后台源码
  • canvas网站源码网站静态和动态区别
  • 网站建设需要了解哪些方面数据分析工具
  • 求个网站没封的2021网站建设初步课程介绍
  • 沈阳网站前端网站建栏目建那些
  • 经典网站案例江苏省建设厅官网
  • 公司建设网站需要多少钱重庆房产网站建设
  • 鹤岗市建设局网站可信网站认证有用吗
  • 网站注册的账号怎么注销如何百度推广
  • 用wordpress制作网站模板阿里云网站建设合作
  • 金华建设公司网站宝武马钢集团公司招聘网站
  • 万州网站制作公司阳江市网站建设
  • 下载建设网站软件投资公司注册资金多少
  • 如何创建一个论坛网站免费域名解析平台