Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化( 三 )


Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化

文章插图
 
同理删除也是一样的逻辑,删除之后再次查询列表,已经不展示删除的数据了,这里不再展开 。
4、上面的例子是比较简单的示例,往往我们项目中的实际运用是比较复杂的,需要与数据库进行交互(就是与quart涉及的表相关),同时在前端web界面上可以进行展示和动态配置,并且记录操作的日志,我们来看一个示例 。
Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化

文章插图
 
新增或者修改定时任务的规则:设置定时任务调用方法、执行的时间规则(cron表达式)、执行的策略、是否并发执行以及状态等核心参数 。
Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化

文章插图
 
记录任务的执行日志:
Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化

文章插图
 
【Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化】以上是web端的界面操作,后台SpringBoot集成这块,建议把quartz定时器做成一个单独的模块,整合到开发的项目当中 。我们到配置文件 Application.yml 中配置quartz,也可以单独写配置文件 quartz.properties 然后项目启动时加载该配置文件:
Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化

文章插图
 
整体的业务实现,包含工具类(比如校验cron表达式、获取上下文信息、常量、定时任务工具类等)、异常处理类、实体类、接口层和接口实现层、dao层和MyBatis数据库交互层、页面操作等:
Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化

文章插图
 
核心代码就是业务实现层,我们看一个核心的SysJobServiceImpl 。
Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化

文章插图
 
再看一个定时任务工具类:
Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化

文章插图
 
页面控制:
Quartz 作业调度框架的掌握,从基础的纯服务到界面可配置化

文章插图
 
梳理了之后,我们发现它的核心业务也比较简单,先创建一个scheduler,然后创建一个Trigger,再创建一个job,最后注册trigger并启动scheduler,通过页面来进行控制,后台进行一些基础的检验,业务实现,实现数据库交互 。




推荐阅读