项目简介
本项目是基于Spring Boot框架开发的Quartz任务调度管理系统,作为 springboot - quartz - lite
的starter版本,可开箱即用。它结合了Quartz的任务调度能力与Spring Boot的便捷开发特性,提供可视化任务管理界面,支持任务的创建、编辑、执行、暂停、恢复和删除等操作,具备任务日志记录和异常邮件通知功能,保障任务调度稳定且可监控。
项目的主要特性和功能
- 登录验证:用户登录系统需验证,登录信息用RSA加密,登录接口有
参数签名 + 时间戳
机制,保障登录安全,每次登录有效时长30分钟。 - 任务管理:任务列表显示任务基本信息,支持
立即执行
、暂停
、恢复
、删除
、修改
、日志查询
等操作。有在线生成Cron
按钮,方便用户,还能设置页面自动刷新频率。 - 任务日志:任务日志页面按执行时间倒序显示
执行时间
、执行结果
、执行成功或异常信息
。任务执行失败时可配置邮件通知指定邮箱。 - 配置灵活:可在
application.yml
中配置账号、密码、RSA公钥、私钥、邮件通知等信息。
安装使用步骤
环境准备
确保已安装Java 8及以上版本和Maven构建工具。
创建框架所需表
在新建或已存在的数据库中,执行项目提供的SQL脚本,创建框架所需表结构。
项目集成
- 引入Maven依赖:在
pom.xml
中添加以下依赖:xml <dependencies> <!-- mysql --> <dependency> <groupId>mysql</groupId> <artifactId>mysql - connector - java</artifactId> <scope>runtime</scope> </dependency> <!-- 引入 Quartz - Lite 的 Starter --> <dependency> <groupId>com.gitee.leiguoqing.quartz - lite - starter</groupId> <artifactId>quartz - lite - spring - boot - starter</artifactId> <version>1.2.0</version> </dependency> </dependencies> <repositories> <repository> <id>jitpack.io</id> <url>https://jitpack.io</url> </repository> </repositories>
也可在Mavensetting.xml
中添加相关仓库配置。 - 配置数据库:在
application.yml
中添加数据库连接配置:yml spring: datasource: driver - class - name: com.mysql.cj.jdbc.Driver username: {username} password: {password} url: jdbc:mysql://localhost:3306/{database}?useUnicode=true&characterEncoding=UTF - 8&allowMultiQueries=true&useSSL=false&autoReconnect=true&serverTimezone=UTC&rewriteBatchedStatements=true
- 配置Quartz - Lite:在
application.yml
中进行Quartz - Lite的相关配置,如是否显示Banner、任务执行异常邮件通知、任务页面配置、安全认证等。yml spring: quartz: show - banner: true mail: enable: false send - email - form: '191789784@qq.com' send - email - to: - '191789784@qq.com' task - view: embedded: false login - username: admin login - password: 123456 security: auth: pubKey: 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCV+cJIYadGdhQc84MlxsCOTZuyaeKAwImBkY23j4PdVaXh/8bRaz/KXI6V1ArgO1Q2vrDc177xfXVNgQZQz2SIApdJtXZzn/shZ73kT5xXqsUxE4L0bg9gF5IJ259ggQzG8S+OmzfJB4SUOrXvwIe8vJJXsHdxD136A0RGezC8QwIDAQAB' priKey: 'MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBAJX5wkhhp0Z2FBzzgyXGwI5Nm7Jp4oDAiYGRjbePg91VpeH/xtFrP8pcjpXUCuA7VDa+sNzXvvF9dU2BBlDPZIgCl0m1dnOf+yFnveRPnFeqxTETgvRuD2AXkgnbn2CBDMbxL46bN8kHhJQ6te/Ah7y8klewd3EPXfoDREZ7MLxDAgMBAAECgYAFHoJYMCUijZNALbuzRWZ7NQD0hRK7LFdFOe+pbVel7W99GFrz+QIzaRdg290HLF9Cgx3MW/zjh1HCtH2/smSPBmiTizV6I4lD+WwWgSOQHrKTSSqYfnWUStu/8z5Gucp7vlExT5KULEoMLWCXNOlI+G8+5N4XLrFwunpUT26CAQJBAOOqdCLZuVl/UK0vZfwmJMkgDCQqcgiTanor4w8oQpfQn8FsNwRB8Y9n2V1fVmAkvrKhm1Ig0Q8Tj3vYWEF+NQECQQCopA55NFHKf/29LnzP9q8h4VdRUa6QRqjGtOhQ2GS9uWcQ/H1hpPZiABEaXF5iDAhBiHG9yEHXtUD/O4wQZ91DAkEAq2SVje8PRLs+R0MZqhwlMWz49vklZCNm05bal3ydtaEPxBPtzzy92FI8J7kwU60WC3Dyd3/RI2J8cKXMu3GCAQJAEfK785xk5BdxKvRKpluL0iBIicgWuxY6GkPgwdH2Dtcvp/gnZAAJlO6K43JXPToomsjpyhgJIesRitiMlKZpPwJBAKnvS/4R6c8VaYK+Vfhq7LLSZrGdmQTpd/cO794OkZgFeo34qoE3gHEx+ulflStkdhGms6oobkCd3W72E1vwzo4=' properties: org: quartz: scheduler: instanceName: myQuartzScheduler instanceId: AUTO jobStore: class: org.quartz.impl.jdbcjobstore.JobStoreTX driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate tablePrefix: QRTZ_ isClustered: true clusterCheckinInterval: 10000 useProperties: false dataSource: quartzDataSource misfireThreshold: 5000 threadPool: class: org.quartz.simpl.SimpleThreadPool threadCount: 3 threadPriority: 5 threadsInheritContextClassLoaderOfInitializingThread: true job - store - type: jdbc jdbc: initialize - schema: never
若要启用邮件通知功能,还需配置spring.mail
相关信息。
运行项目
使用Maven命令启动Spring Boot应用。启动后,在浏览器输入 http://{IP}:{PORT}/quartz - lite/login.html
进入登录页面。
新建任务
- 继承
com.leigq.quartzlite.starter.bean.job.BaseTaskExecute
类,重写execute
方法。 - 在任务类上添加
@Component
注解。 - 重启服务,让任务注入到Spring中,然后在可视化界面添加任务。
注意事项
- 拦截器设置:根据
quartz.task - view.embedded
的配置,调整项目中的拦截器规则。 - MyBatis/MyBatisPlus配置:若项目使用MyBatis或MyBatisPlus框架,需在
mapper - locations
中添加classpath*:/mapper/lite/*.xml
。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】