技术好文:Springboot整合xxl

简介: 技术好文:Springboot整合xxl

前言


很久很久以前写过好几篇关于定时任务的使用系列的文章:


这一篇是最简单的,就是单纯跑跑定时任务,那你看这篇就行,没必要用xxljob(因为xxljob要跑服务端,然后自己服务作为客户端接入):


文章 使用@Scheduled 简单实现定时任务


然后这一篇是开始打开封装的壳子,开始可以自己手动配置地去使用定时任务了:


文章 使用Quartz定时器执行多个定时任务 配置篇


然后再继续打开封装的壳子,可以更加自由地去使用定时任务,也就是动态调度:


文章 Quartz定时任务的动态调度使用,实战详解


今天,带来的xxljob的使用, 可能很多人已经会用(最近挺多应届生问到这个的使用),所以我还是选择写一下整合xxl job 的使用入门篇。


正文


在什么都没开始的时候,我们看看springboot 使用 xxljob,需要有些什么,简图:


admin :理解为 server服务端 ,负责提供xxljob相关功能


demo: 理解为 client客户端,你自己想用xxljob的服务


HTML页面, 可视化操作,任务调度。


demo负责通过代码叙述自己的定时任务要做的东西, admin管不着。


admin管什么,可以管 这些任务怎么执行,怎样执行。怎么管? 在HTML页面上管 (其实也有api方式,该篇不讲)。


看到这里,新手的看客是否觉得好麻烦,又要写server端代码,又要接入,而且还得写前端HTML页面?


啥玩意,不搞了。 (是的,正常要是这样的话我也不搞)


如果说这一切都是开箱即用,这样你觉得可以接受吗?


代码GITEE地址(不是我写的,xuxueli 都全部写好了,我之所以这么引出来,是怕你们只能接受我,接受不了别人) :


下载代码解压出来:


IDEA上打开项目:


开始实战应用:


先创建数据库 (sql 是现成的)


执//代码效果参考:http://www.lyjsj.net.cn/wx/art_23859.html

行完:

一.把admin 服务端跑起来


application.properties文件,注意红色框的几个地方(端口我自己改了个自己喜欢的8961,大家随意就行)改完直接运行:


然后去HTML管理界面看下,


默认账号 admin


默认密码 123456


PS: 如果你忘记密码了怎么办?


跑偏了,继续,登录成功可以进到任务调度中心界面:


到这,先不用管其他的,我们接下来第二步。


二.接入xxljob,开始使用xxljob实现定时任务


红色框的这几个点,比较重要:


既然要接如xxl job ,那么 admin 的接入地址,肯定是要对应的:


xxl.job.admin.addresses=


executor 至关重要, 这个就是 任务执行器, 每个job任务都是需要执行器来执行的,就像子弹和枪的关系 。


这个executor ,简单的理解为每个接入的demo服务对应一个就行。


这个可视化界面是随时可以新增、删除、修改的, 但是怎么操作得对应起来才能正常运行。


当然了,直接改数据库表数据也行:


PS: 如果我不想某个任务执行了, 那么把相关得执行器干掉就行。


子弹没有对应型号的枪,能打吗?


改完配置,就已经接入成功了其实。


怎么使用?


示例代码:


/*


示例


*/


@XxlJob("clockInJobHandler")


public void clockInJobHandler() //代码效果参考:http://www.lyjsj.net.cn/wx/art_23857.html

throws Exception {

logger.info("clockInJobHandler 正在执行打卡校验" + new Date());


}


然后把demo 跑起来 ,


控制台的日志可以看到,好多个任务已经都注册到admin去了 :


代码都写好了, 那么就是 在HTML页面 操作调度一下就可以。


新增对任务的管理 :


任务启动了:


可以看到控制台,定时任务在定时执行:


好了该篇就到这吧, 总结一下springboot 快速整合 xxl-job 需要做的事情:


1. 下载开源的代码


2.用开源提供的sql创建数据库


3.改下admin的配置文件,运行项目


4.改下自己服务的配置文件,接入xxl -job


5.用注解@XxlJob 写下定时任务实现的代码


6.去HTML管理界面,创建一下 执行器、任务器


1.xxjob环境配置


1.1源码下载


xxjob源码下载传送门


1.2初始化数据库


在xxl-job-2.0.1\doc\db\tables_xxl_job.sql执行这个sql文件到


1.3项目中配置数据源


1.3启动项目


登录 配置成功


<

相关文章
|
2月前
|
人工智能 自然语言处理 前端开发
SpringBoot + 通义千问 + 自定义React组件:支持EventStream数据解析的技术实践
【10月更文挑战第7天】在现代Web开发中,集成多种技术栈以实现复杂的功能需求已成为常态。本文将详细介绍如何使用SpringBoot作为后端框架,结合阿里巴巴的通义千问(一个强大的自然语言处理服务),并通过自定义React组件来支持服务器发送事件(SSE, Server-Sent Events)的EventStream数据解析。这一组合不仅能够实现高效的实时通信,还能利用AI技术提升用户体验。
197 2
|
7天前
|
JavaScript 安全 Java
java版药品不良反应智能监测系统源码,采用SpringBoot、Vue、MySQL技术开发
基于B/S架构,采用Java、SpringBoot、Vue、MySQL等技术自主研发的ADR智能监测系统,适用于三甲医院,支持二次开发。该系统能自动监测全院患者药物不良反应,通过移动端和PC端实时反馈,提升用药安全。系统涵盖规则管理、监测报告、系统管理三大模块,确保精准、高效地处理ADR事件。
|
2月前
|
存储 Java API
简单两步,Spring Boot 写死的定时任务也能动态设置:技术干货分享
【10月更文挑战第4天】在Spring Boot开发中,定时任务通常通过@Scheduled注解来实现,这种方式简单直接,但存在一个显著的限制:任务的执行时间或频率在编译时就已经确定,无法在运行时动态调整。然而,在实际工作中,我们往往需要根据业务需求或外部条件的变化来动态调整定时任务的执行计划。本文将分享一个简单两步的解决方案,让你的Spring Boot应用中的定时任务也能动态设置,从而满足更灵活的业务需求。
135 4
|
2月前
|
存储 JSON 算法
JWT令牌基础教程 全方位带你剖析JWT令牌,在Springboot中使用JWT技术体系,完成拦截器的实现 Interceptor (后附源码)
文章介绍了JWT令牌的基础教程,包括其应用场景、组成部分、生成和校验方法,并在Springboot中使用JWT技术体系完成拦截器的实现。
118 0
JWT令牌基础教程 全方位带你剖析JWT令牌,在Springboot中使用JWT技术体系,完成拦截器的实现 Interceptor (后附源码)
|
3月前
|
存储 缓存 Java
在Spring Boot中使用缓存的技术解析
通过利用Spring Boot中的缓存支持,开发者可以轻松地实现高效和可扩展的缓存策略,进而提升应用的性能和用户体验。Spring Boot的声明式缓存抽象和对多种缓存技术的支持,使得集成和使用缓存变得前所未有的简单。无论是在开发新应用还是优化现有应用,合理地使用缓存都是提高性能的有效手段。
44 1
|
2月前
|
机器学习/深度学习 移动开发 自然语言处理
基于人工智能技术的智能导诊系统源码,SpringBoot作为后端服务的框架,提供快速开发,自动配置和生产级特性
当身体不适却不知该挂哪个科室时,智能导诊系统应运而生。患者只需选择不适部位和症状,系统即可迅速推荐正确科室,避免排错队浪费时间。该系统基于SpringBoot、Redis、MyBatis Plus等技术架构,支持多渠道接入,具备自然语言理解和多输入方式,确保高效精准的导诊体验。无论是线上医疗平台还是大型医院,智能导诊系统均能有效优化就诊流程。
|
4月前
|
Java 数据库连接 数据库
告别繁琐 SQL!Hibernate 入门指南带你轻松玩转 ORM,解锁高效数据库操作新姿势
【8月更文挑战第31天】Hibernate 是一款流行的 Java 持久层框架,简化了对象关系映射(ORM)过程,使开发者能以面向对象的方式进行数据持久化操作而无需直接编写 SQL 语句。本文提供 Hibernate 入门指南,介绍核心概念及示例代码,涵盖依赖引入、配置文件设置、实体类定义、工具类构建及基本 CRUD 操作。通过学习,你将掌握使用 Hibernate 简化数据持久化的技巧,为实际项目应用打下基础。
290 0
|
2月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,包括版本兼容性、安全性、性能调优等方面。
166 1
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
108 62
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,帮助开发者提高开发效率和应用的可维护性。
64 2