XXL-JOB通用执行器的编写
xxl-job
提供的JobHandler
例子中, 执行器都是与web应用整合在一起, 其实执行器完全可以分离出来单独启动, 更容易了解执行器的原理
执行器的核心代码
首先进行JobHandler
的注册
1 | XxlJobExecutor.registJobHandler("demoJobHandler", new DemoJobHandler()); |
随后即可启动执行器, 这里为了简单, 配置写死了, 后面可以引入配置文件更加灵活
1 | XxlJobExecutor xxlJobExecutor = new XxlJobExecutor(); |
由于xxlJobExecutor.start()
是新开一个线程来开启执行器, 所以若是普通Java应用启动则需加上这个, 防止主进程结束, 导致程序关闭, Web应用则不需要了
1 | while(true){ |
Maven依赖
1 | <dependencies> |
再配置logback.xml
即可
首先启动调度中心也就是xxl-job-admin
项目, 再启动项目, 就可以在http://127.0.0.1:8080/xxl-job-admin
中看到执行器了
JobHandler
JobHandler
只需继承IJobHandler
中execute
中实现自己的逻辑即可,@JobHandler(value="demoJobHandler")
注解只是为了方便通过扫描自动注册, 如果是像上面那样简单的实现, 其实不需要这个
1 | public class DemoJobHandler extends IJobHandler { |
至此, 完整的xxl-job
执行器就完成了