任务列表显示每个任务的基本信息,可对任务进行立即执行
、暂停
、恢复
、删除
、修改
、日志查询
操作。
对于不会写 cron 表达式的同学,可以点击左上角的 在线生成Cron
按钮进行生成。
右上角可以设置页面的自动刷新频率,默认一秒钟刷新一次。
下面是整个项目结构,主要类已做注释。
├─java
│ └─com
│ └─leigq
│ └─quartz
│ │ QuartzApplication.java
│ │
│ ├─bean
│ │ ├─common
│ │ │ Response.java -- 统一返回结果
│ │ │
│ │ ├─constant
│ │ │ QuartzTriggerConstant.java
│ │ │
│ │ ├─dto
│ │ │ AddQuartzJobDTO.java
│ │ │ TaskExecuteDTO.java
│ │ │
│ │ ├─enumeration
│ │ │ SysTaskExecResultEnum.java
│ │ │
│ │ ├─job
│ │ │ BaseJob.java
│ │ │ BaseJobDisallowConcurrent.java
│ │ │ BaseTaskExecute.java -- 任务基础抽象类,其他任务继承此类,实现其
│ │ │
│ │ └─vo
│ │ AddSysTaskVO.java
│ │ SysTaskListVO.java
│ │ SysTaskLogListVO.java
│ │ UpdateSysTaskVO.java
│ │
│ ├─controller
│ │ SysTaskController.java
│ │ SysTaskLogController.java
│ │
│ ├─domain
│ │ ├─entity
│ │ │ SysTask.java
│ │ │ SysTaskLog.java
│ │ │
│ │ └─mapper
│ │ SysTaskLogMapper.java
│ │ SysTaskMapper.java
│ │
│ ├─service
│ │ QuartzJobService.java
│ │ SysTaskLogService.java
│ │ SysTaskService.java
│ │
│ ├─task
│ │ │ HelloQuartz1.java -- 测试任务,继承BaseTaskExecute
│ │ │ HelloQuartz2.java -- 测试任务,继承BaseTaskExecute
│ │ │
│ │ └─simple
│ │ SchedulerTest.java
│ │
│ ├─util
│ │ SpringContextHolder.java
│ │ ValidUtils.java
│ │
│ └─web
│ ├─config
│ │ MvcConfig.java
│ │ MyBatisPlusConfig.java
│ │ OrikaConfig.java
│ │ QuartzConfig.java -- Quartz任务配置
│ │
│ └─exception
│ GlobalExceptionHand.java -- 全局异常处理
│ ServiceException.java
│
└─resources
│ rebel.xml
│
├─config
│ │ application-dev.yml
│ │ application-prod.yml
│ │ application-test.yml
│ │ application.yml
│ │
│ └─log4j2
│ log4j2-dev.xml
│ log4j2-prod.xml
│ log4j2-test.xml
│
├─mapper
│ SysTaskLogMapper.xml
│ SysTaskMapper.xml
│
├─sql
│ Quartz官方建表.sql
│ 自定义任务和任务日志表.sql
│
└─templates
task-log.html
task-manager.html
结构很简单就不多说了。
建议直接把源码克隆下来运行,源码里面注释很清晰,然后结合下面的几篇文章看,就可以很快理解了。