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

做气体检测仪的网站东莞seo网站推广建设

做气体检测仪的网站,东莞seo网站推广建设,成都小程序开发公司,响应式企业营销型网站多少钱文章目录 前言一、Quartz 是什么?下面是对 Java 中 Quartz 的主要概念的简单描述: 二、使用步骤总结 前言 平时开发中相信大家都经常用到定时任务吧,最近简单的就是直接使用Scheduled注解标注到方法上用注解的方式在项目运行时无法去对任务进…

文章目录

  • 前言
  • 一、Quartz 是什么?
    • 下面是对 Java 中 Quartz 的主要概念的简单描述:
  • 二、使用步骤
  • 总结


前言

平时开发中相信大家都经常用到定时任务吧,最近简单的就是直接使用@Scheduled注解标注到方法上用注解的方式在项目运行时无法去对任务进行管理。现在开发过程中用得比较多的就是Quartz框架了。下面直接介绍其最常见的使用方式。


一、Quartz 是什么?

Quartz 是一个功能强大的开源作业调度库,用于在 Java 应用程序中实现任务调度和定时任务。它提供了灵活的调度机制,可以根据时间表、间隔或条件触发任务的执行。

下面是对 Java 中 Quartz 的主要概念的简单描述:

  1. 任务(Job): Quartz 中的任务是可以执行的工作单元。你可以创建实现 org.quartz.Job 接口的类,并在其中定义任务的逻辑。

  2. 触发器(Trigger): 触发器用于定义任务何时执行的规则。Quartz 提供了多种类型的触发器,例如简单触发器(SimpleTrigger)和 Cron 触发器(CronTrigger)。你可以配置触发器的执行时间、重复间隔和触发条件等。

  3. 调度器(Scheduler): 调度器是 Quartz 的核心组件,用于管理任务和触发器。它负责根据配置的规则触发任务的执行,并管理任务的调度、暂停、恢复等操作。

  4. 作业存储(Job Store): 作业存储是 Quartz 用于存储任务和触发器信息的持久化机制。它可以将任务和触发器的状态保存在内存中或者在数据库中进行持久化。

二、使用步骤

本次示例使用JDBCJobStore(mysql)存储任务的方式实现,这种方式也是实际开发中用得最多的方式

  1. 在你的 Spring Boot 项目中添加 spring-boot-starter-quartz 依赖。

    <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-quartz</artifactId>
    </dependency>
    
  2. 初始化脚本,org.quartz.impl.jdbcjobstore包下面存放了各数据库初始化脚本,本次实验demo,下载的是tables_mysql_innodb.sql( ps:github 上也提供了脚本,并且也有各种demo。Quartz github 脚本下载地址(mysql_innodb.sql))

  3. 创建一个实现了 org.quartz.Job 接口的任务类,该接口定义了任务的执行逻辑。例如,你可以创建一个名为 MyJob 的类,实现 Job 接口,并重写 execute 方法。

    import org.quartz.Job;
    import org.quartz.JobExecutionContext;
    import org.quartz.JobExecutionException;public class MyJob implements Job {@Overridepublic void execute(JobExecutionContext context) throws JobExecutionException {// 执行你的任务逻辑System.out.println("Hello, Quartz!");}
    }
    
  4. 在你的应用程序中配置 Quartz 调度器和触发器。可以通过创建一个 SchedulerFactoryBean Bean 来配置 Quartz 调度器,并将触发器与任务关联。以下是一个简单的配置示例:

    
    @Component
    public class StartJob {@Autowiredprivate Scheduler scheduler;// 实际开发中,创建任务关键参数,可以通过接口的进行增删改查维护定时任务,这样就可以动态的去控制定时任务了@PostConstruct public void start() throws SchedulerException {//创建触发器 定义执行频率String id = "1111111111111";Trigger trigger = TriggerBuilder.newTrigger().withIdentity(id, "group1").withSchedule(cronSchedule("0/20 * * * * ?")).build();//创建任务,指定任务处理逻辑JobDetail jobDetail = JobBuilder.newJob().ofType(TestJob.class).withIdentity(id).build();// 任务信息 存库、存在任务则更新(可以去quartz 相关表里面去看,框架自动把任务信息存到表里面了,//下次启动,只要开启了spring.quartz.auto-startup = true ,就能自动扫描quartz_表存的任务信息)scheduler.scheduleJob(jobDetail, trigger);scheduler.start();}
    }
  5. 配置文件

    # 项目启动自动启动定时任务调度
    spring.quartz.auto-startup=true
    spring.quartz.job-store-type=jdbc
    org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate
    

总结

以上是Quartz框架基于springboot简单demo,如果你还在springboot中使用@Scheduled注解不妨试一下Quartz定时任务框架
(需要demo代码的可以评论,私发demo git地址)

http://www.hengruixuexiao.com/news/52082.html

相关文章:

  • 网络营销推广的常用方法有哪些有必要买优化大师会员吗
  • 合肥网站建设cnfg怎么做一个自己的网页
  • 公司做网站百度可以搜到吗晋城今日头条新闻
  • 站长之家域名查询大全推广普通话内容100字
  • 教做衣服网站百度知道客服
  • 微博推广文案怎么写上海搜索排名优化
  • win7支持wordpressseovip培训
  • 湖南定制响应式网站有哪些云盘网页版登录
  • 信誉好的营销单页网站seo实战指导
  • 外贸网站建设价格怎么样seo营销是什么
  • directadmin网站储存目录福州百度代理
  • 做游戏脚本的网站成人零基础学电脑培训班
  • 餐饮网站 设计电子商务是干什么的
  • 活动策划网站青岛网站建设培训学校
  • 2018做网站的软件百度学术论文官网入口
  • 做个网站找别人做的吗seo效果检测步骤
  • 个人作品网站策划书如何建立一个自己的网站?
  • 网站开发部组织架构seo外包服务专家
  • 重庆八大员证书查询网站专注于品牌营销服务
  • 施工企业资质新标准2022长春seo网站排名
  • 信用网站建设内容宁波seo哪家好
  • 做佛教网站的人从中谋利吗竞价推广公司
  • 什么软件做电影短视频网站手机怎么制作网站
  • 网站设计案例分析软文大全800字
  • 用腾讯云做淘宝客网站视频如何用百度平台营销
  • 周村网站制作首选公司网络科技公司骗了我36800
  • 北京网站设计提供商打字赚钱平台 学生一单一结
  • 廊坊做网站的企业哪家好网络营销的优势有哪些?
  • 做医疗器械网站怎么找高清大图舆情分析报告模板
  • 河津做网站seo标题优化是什么意思